Back to all posts
ThinkingJuly 22, 20269 min readUpdated October 12, 2026

Why Aiva Chat doesn't have a public API yet (and when it will)

It's one of the first things people ask about, right after a mobile app. A public API is a promise we're not ready to make. Here's what has to be true first.

AI
The Aiva Chat team
Aiva Chat
A partly open door with light coming through
Photo by Greg Rosenke on Unsplash

Right after "is there a mobile app," one of the most natural questions to ask about Aiva Chat is "do you have an API?" We don't, at least not a public, documented, versioned one that anyone can build against.

We want to explain why, because "we haven't gotten to it" is true but incomplete, and it undersells how deliberate the decision is. Publishing an API means making a promise you keep for years, to developers you've never met, about an interface you're no longer free to change.

The question usually comes from a real need: getting bookings into a CRM Aiva Chat doesn't connect to, pushing call summaries into a spreadsheet, or letting the assistant check something in the business's own system. Most of those needs are already covered another way, and it's worth being specific about which ones are and which aren't.

If you're evaluating Aiva Chat and an API is on your checklist, the table comparing webhooks, custom actions, and a public API is probably the section that answers your real question fastest.

Does Aiva Chat have a public API?

No. There's no general-purpose interface where a developer reads a documentation page and builds against Aiva Chat's data without ever talking to us.

What a public API would mean is letting an outside developer reach in and query, filter, and act on Aiva Chat's data directly, on their own schedule, however they want to shape the request. That's a meaningfully different commitment from "we can connect to your system." It's "we promise this interface will keep working, in this exact shape, indefinitely, for people we can't call when something breaks."

Aiva Chat is a no-code product for small businesses: clinics, salons, law firms, home services. Most of those businesses don't have developers, and what they need is for Aiva Chat to fit the tools they already use. That shaped where we put our effort.

So the short answer to "can Aiva Chat work with my other tools?" is usually yes. The short answer to "can my developer build anything they like on top of Aiva Chat's data?" is not yet. Knowing which of those two questions you're really asking saves a lot of time when you evaluate any tool, not just ours.

What Aiva Chat connects to today

Built-in integrations

Aiva Chat writes bookings to Google Calendar, looks up and creates contacts in HubSpot, sends Stripe payment links mid-call, takes booking deposits through Stripe Checkout in your own Stripe account, and runs on your own Twilio numbers for calls and texts. Those integrations are tested and maintained by us.

Signed webhooks

Webhooks notify an external system the moment something happens: a call ends, a lead comes in, a text arrives, an appointment is booked. Every event is signed, and the booking events cover the whole lifecycle: booked, rescheduled, cancelled, confirmed, completed, no-show, requested, accepted, declined, refunded, and paid, plus waitlist and pass events.

Automation tools via a webhook URL

Any automation tool that accepts a webhook URL, Zapier's catch hooks among them, can receive the event and pass it on to other apps, with no code and without waiting for us to build a connector. That's a webhook pointed at someone else's URL, not an integration we build or maintain.

Custom actions

Give the assistant a URL, a method, and a few inputs, and it can call your own system mid-conversation, for example to check stock or look up an order status.

How Aiva Chat connects without a public API

Step 1: Something happens in a conversation

A caller books an appointment, a lead is captured, or a call ends and its summary is ready.

Step 2: Aiva Chat sends a signed event

Aiva Chat sends a JSON request to the URL you chose, signed with your webhook's secret using an HMAC SHA-256 signature. It's the same pattern Twilio describes in its webhooks documentation: the platform tells your app when an event occurs.

Step 3: Your tool verifies and acts

The receiving tool checks the signature to confirm the request came from Aiva Chat, then does whatever you set up: add a CRM record, append a spreadsheet row, notify a team. Setup details are in the webhooks guide.

Step 4: Custom actions handle the other direction

When the assistant needs information during a call, a custom action calls your system and uses the answer in the conversation. You define exactly which URL it can call and what it sends.

Webhooks and custom actions vs. a public API

Signed webhooksCustom actionsAutomation tool via webhooksPublic API (not offered)
DirectionAiva Chat to you, on eventsAiva Chat calls your URL mid-conversationAiva Chat to other apps, through the toolYou query Aiva Chat whenever you like
Who defines the shapeAiva Chat's event payloadsYou, per actionThe tool's mappingAiva Chat, for every endpoint
Needs a developerSometimes, for a custom endpointNo, configured in the dashboardNoYes
Pull arbitrary data on demandNoNoNoYes
Compatibility burden on Aiva ChatSmall and containedSmallSmallLarge and permanent

Webhooks are the right tool when you want to react to events: keep a CRM in sync, log calls, alert someone. Custom actions are right when the assistant needs to look something up in your system mid-call.

What none of them do is let an outside developer build an arbitrary app on top of Aiva Chat's data, such as a custom dashboard that queries every conversation with its own filters. That's what a public API would add, and it's the part we're not offering yet. If that's a hard requirement, Aiva Chat may not be the right fit today, and we'd rather say so.

Why a public API is a harder promise than it sounds

It's a contract, not a feature

The moment we publish one, we've committed to versioning it, keeping backward compatibility, documenting every field, and supporting developers who hit edge cases at 11 PM on a Saturday, for integrations we can't see and didn't design.

Our data model is still changing

Internally, we can reshape how conversations, bookings, and handoffs are represented whenever we find a better structure, because we control every caller and update them together. Public, every change becomes a potential breaking change for someone else's production system, discovered by a developer whose integration silently stopped working.

Even small surfaces carry versioning costs

Consider a hypothetical: renaming the header that carries our webhook signature. Internally, trivial. But businesses build against webhooks, so a rename would need a transition window with both old and new headers working. A public API multiplies that discipline across every field and endpoint, permanently.

It's a familiar trap for small software companies: ship a public API early, then spend a disproportionate share of engineering time keeping integrations built by a handful of outside developers working, time that comes straight out of the product everyone else uses. We're not willing to make that trade yet.

The security question underneath it

Every endpoint is another door

Aiva Chat holds real customer conversations: booking details, phone numbers, and sometimes sensitive context depending on the business. Every new endpoint is something to secure, rate-limit, and audit, and every new authentication path is a new way for a credential to leak.

The risks are well documented

The OWASP API Security Top 10 exists because insecure APIs are a recurring source of real breaches. We'd rather add that surface deliberately, once, done properly, than incrementally under pressure. It's the same reasoning behind how we approach security generally: fewer doors, each one watched.

What businesses actually need, and how it's handled today

Bookings into a CRM Aiva Chat doesn't connect to

Need: A business uses a CRM without a native Aiva Chat integration. Today: The appointment.booked and lead.created webhooks go to an automation tool's webhook URL, which creates the record in that CRM. Gap: None, as long as your automation tool supports the CRM.

Checking stock mid-call

Need: A store wants the assistant to say whether an item is in stock. Today: A custom action calls the store's inventory URL and uses the answer. Gap: The store's system needs a URL to call.

Call summaries in a spreadsheet

Need: An owner wants every call summary in a sheet. Today: The call.summary_ready webhook goes to an automation tool, which adds a row to the sheet. Gap: None.

A fully custom reporting app

Need: A developer wants to build a dashboard querying all historical conversations with custom filters. Today: Not possible without a public API. The built-in analytics and "Ask your calls" cover many of the same questions. Gap: Real, and we're upfront about it.

Common mistakes when evaluating integrations

Assuming "no API" means "no integrations"

Most connection needs are event-driven, and webhooks handle them without code, directly or through an automation tool. Check what you actually need to happen before ruling a tool out.

Treating a feature-chart checkbox as proof

"Has an API" on a comparison chart says nothing about stability, versioning, or support. Ask how long old versions are supported and what happens when fields change.

Building on an undocumented interface

Reverse-engineering any product's internal endpoints is fragile. They change without notice because they were never promised to anyone.

Ignoring who maintains the connection

An automation step or a webhook endpoint someone set up years ago can break quietly. Assign an owner and check delivery logs.

What would change this

A stable data model

Our internal model needs to be stable enough that we're not reshaping it every quarter.

Dedicated engineering capacity

Supporting an API needs people assigned to it, not borrowed from whoever is free.

The parts that don't show up in a demo

A real public API needs a staging environment separate from production, sensible rate limits, documentation written before launch, and a support channel that actually answers. Shipping endpoints without that would be shipping the appearance of an API.

A smaller step first

The likeliest stepping stone is a narrow, single-partner integration, built and versioned for one counterparty, where we can work through the discipline with one relationship instead of hundreds.

A public API sits on the same list as a native mobile app: things we could technically build sooner, but wouldn't build well if we rushed them to close a feature-comparison gap.

Practical takeaways for connecting Aiva Chat now

  • Start from the event. Decide what should happen when a call ends, a lead arrives, or a booking is made.
  • Use built-in integrations first for Google Calendar, HubSpot, Stripe, and Twilio.
  • Route everything else through webhooks.
  • Verify signatures on any custom endpoint.
  • Use custom actions when the assistant needs a live lookup.
  • Check the delivery log after setup and occasionally after.
  • Tell us what's missing, because requests shape the roadmap.

Conclusion

For most small businesses asking "do you have an API?", the real need is to get bookings, leads, or call summaries into another tool, and that works today without one.

The decision point is the one case that doesn't: if you need a developer to query Aiva Chat's historical data with custom filters, Aiva Chat isn't the right fit yet, and you should weigh that before committing. We'll build a public API once our data model settles and someone can own it full-time. Until then, we'd rather keep a smaller promise well than make a bigger one badly.

Ready to connect Aiva Chat to the tools you use?

The quickest way to settle it is to try the exact flow you need. Create a webhook for appointment.booked, point it at your own endpoint or an automation tool's webhook URL, make a test call that books a slot, and check that the row lands where you want it.

Webhooks and custom actions are on every plan, including the trial. Start your 14-day free trial, no card required, or book a demo and bring the list of systems Aiva Chat has to talk to.

ThinkingBusiness
Share
AI
Written by
The Aiva Chat team
Aiva Chat

Posts from the people building Aiva Chat in Rajkot — how the product works, what we have learned building it, and guides for getting the most out of an AI receptionist.

Rajkot, India · at Aiva Chat since 2024
More posts

FAQ

Common questions.

Still have questions?Contact us

No. There's no public, documented, versioned interface that any developer can build against without talking to us. Aiva Chat connects to other systems through built-in integrations, signed webhooks, and custom actions, but each of those is a narrower commitment than a general-purpose public API that lets outside developers query and change data on demand.

Through integrations we've built and tested: Google Calendar, HubSpot, Stripe payment links, and Twilio. Beyond those, signed webhooks send events to a URL you choose, including automation tools like Zapier that accept a webhook URL, and custom actions let the assistant call your own system's URL mid-conversation, all set up in the dashboard without writing code.

Webhooks push a signed notification to a URL you control the moment something happens, such as a booking, a missed call, or a new lead. You can't use them to reach into Aiva Chat and pull arbitrary data whenever you like, the way a general API would allow. They're a narrower, one-directional, event-shaped contract.

Yes, once two things are true: our internal data model is stable enough that we're not reshaping it every quarter, and we have engineering capacity dedicated to supporting it rather than borrowed from whoever is free that week. When it happens, we want it versioned from day one and documented before the first outside developer touches it.

Tell us which system, because those requests shape what we build next. In the meantime, most needs are covered without a public API: webhooks can send Aiva Chat's events to the tool, directly or through an automation tool's webhook URL, and custom actions can let the assistant look things up in your own system during a conversation, as long as that system offers a URL to call.

Because even a limited public interface becomes a permanent compatibility commitment the moment outside developers build on it. Any change to a field or response shape has to run old and new versions side by side so nothing breaks. A full API multiplies that cost across every endpoint, indefinitely, and it comes straight out of product work.

If anything, the opposite. Every public endpoint is another thing to secure, rate-limit, and audit, and every new authentication path is another way for a credential to leak. Keeping the surface area narrow and deliberate, with signed webhooks and actions you configure yourself, is part of why we haven't shipped one yet.

Yes, for the events Aiva Chat sends. Webhooks fire on things like a completed call, a summary being ready, a new lead, an incoming text, or an appointment being booked, moved, cancelled, confirmed, or marked a no-show, each with the details as JSON. Send them to your own endpoint, or to an automation tool's webhook URL that forwards them into a spreadsheet, CRM, or database you control.

Like this? Get more.

One email a month. Guides, engineering deep-dives and product updates. No fluff.

4,200+ subscribers. Unsubscribe anytime.