How to Connect Your Website to WABA.FLOTA (Website API)
If your business already has a website, an app, or any backend with an API — a store, a booking system, a dealership inventory, a CRM — you can connect it to your WABA.FLOTA AI agent so it answers customers with real, live data instead of whatever you typed into its prompt. This guide walks through the setup end to end, using a real example.
What this actually does
Without a website connection, your AI agent only knows what's in its system prompt and product catalog — fixed, manually-updated information. With a website connection, the agent can call your own site's API mid-conversation: "do you have this in stock?", "what's my order status?", "show me a photo of X" all get answered with a live lookup instead of a guess.
This feature requires a Pro plan or higher — check Dashboard → Plan Matrix if you're not sure which plan you're on.
Step 1: Get your website's API details ready
Before touching WABA.FLOTA's dashboard, you need three things from your own website/backend:
- A base API URL — the root your API endpoints hang off, e.g.
https://yourstore.com/api/public. This is not your homepage URL — it should be the actual API path (check your website's own documentation, or ask whoever built it). - How it authenticates — most APIs expect either an
Authorization: Bearer <key>header, or a custom header likex-api-key: <key>. Confirm which one yours uses — using the wrong format is the single most common setup mistake. - An API key — generated from your website's own admin panel. If your site offers separate "read" and "read & write" keys, use the read & write one here (WABA.FLOTA's connection only holds one key).
Step 2: Set up the connection
Go to Dashboard → Website API → Your website connection and fill in:
- Base URL — the API root from step 1.
- Auth header name —
Authorization(default) or whatever custom header your site expects (e.g.x-api-key). - Auth header prefix —
Bearer(default) — clear this field if your site's header doesn't use a prefix at all. - Auth token — your API key. Leave blank only if your site's API is genuinely public/unauthenticated.
Click Save connection. If it doesn't confirm with "Saved.", double-check the Base URL isn't missing — it's the one required field.
Step 3: Define your actions
A connection alone does nothing — your AI agent only gets abilities when you define Actions, each one becoming a distinct tool the AI can choose to call. Go to the Actions section, on the same page, and add one.
For each action you set:
| Field | What it means |
|---|---|
| Tool name (key) | A short, code-style name given to the AI, e.g. get_order_status. Lowercase, no spaces. |
| Label | A friendly name shown only in your dashboard. |
| Description | The most important field — tells the AI exactly when and how to use this tool. Be specific: "Look up a customer's order status by their exact order ID," not "gets orders." |
| Method | GET for reads, POST/PATCH/PUT for anything that changes data. |
| Path | Appended to your Base URL, e.g. /orders/{order_id} — anything in {curly braces} gets filled in by the AI from the customer's message. |
| Parameters | Each one needs a Name, whether it goes in the URL path or as a query string (?name=value), a Description for the AI, and whether it's Required. |
| Body template (write actions only) | JSON with {placeholders}, e.g. {"status": "{status}"}. |
A typical read example: key get_listings, method GET, path /listings, with optional query parameters like brand or maxPrice so the AI can narrow a search instead of always pulling your entire catalog.
Step 4: Let the AI send photos
If your API returns image URLs (a product photo, a car listing photo), the AI can send them directly on WhatsApp using its built-in fetch_and_send_media capability — just make sure your action's response includes a plain image URL field, and mention in the action's description that a photo is available so the AI knows to offer it.
Step 5: Test it for real
Message your own WhatsApp number and ask something that requires a live lookup — "do you have any [product] under [price]?" or "what's the status of order #123?" If the agent responds with generic/incorrect info instead of real data, check:
- The Base URL is the actual API path, not your homepage.
- The auth header name/prefix exactly matches what your site expects.
- At least one Action is added and its description clearly tells the AI when to use it.
Design tip: keep results small and specific
Don't build one action that dumps your entire product catalog on every call — it's slower, and a giant response can get cut off before the AI can use it properly. Instead, add filter parameters (brand, category, price range, an ID) so each call returns a short, precise result. Well-designed filters also mean better replies: an agent that can search finds the right answer faster than one that has to read through everything itself.
Common questions
My connection is saved but the AI still says it can't find live data — why?
Almost always one of two things: no Action has been added yet (a connection with zero actions gives the AI nothing to call), or the Base URL/auth header format doesn't match what your site actually expects.
Can the AI update data on my website, not just read it?
Yes — set an action's method to POST/PATCH/PUT, add a body template, and the AI can trigger real changes (like marking an order as shipped) when a conversation calls for it. Use this carefully and describe exactly when it should happen.
Is my API key stored securely?
Yes — it's encrypted at rest and never shown back to you (or anyone) after you save it; the dashboard only ever shows a masked placeholder once a key is set.