TensoraAI API & Integration Reference
Build connected AI systems using APIs, webhooks, automation workflows, databases, CRMs, calendars, and your existing business applications.
TensoraAI designs integrations around your existing technology stack rather than forcing your business into a closed platform.
Integration endpoints, authentication methods, availability, and limits depend on each implementation. Public self-service API access is not currently offered unless specifically enabled for your project.
Documentation navigation. Current section: Overview
Overview
Build AI Into Your Existing Stack
TensoraAI integrations connect AI agents with the systems your business already uses. Depending on the implementation, an AI agent can retrieve information, trigger workflows, update records, schedule appointments, send notifications, or communicate with third-party services.
A customer arrives through a website, phone call, or business app. That reaches the AI experience layer, which passes the conversation to a TensoraAI workflow. The workflow branches to a CRM, a calendar, and a database — sending email, creating a booking, and running automation respectively — and those converge on a completed business action.
Common integration approaches
These are the five shapes almost every integration takes. Which one fits is decided by what the connected system supports, not by what would be convenient — so not every approach is available on every project.
REST APIs
Webhooks
Automation Platforms
Database Events
Custom Integrations
Getting Started
Getting Started
Every TensoraAI integration goes through the same four stages, whether it is a single webhook or a workflow spanning five systems. The order matters: choosing a method before the action is defined is how integrations end up half-built.
Step 01—Define the Action
Identify exactly what the AI system needs to read, create, update, or trigger. A precise action is what makes the rest of the integration testable.
Step 02—Choose the Integration Method
REST API, webhook, OAuth, API key, direct database connection, automation platform, or a custom adapter — whichever the connected system actually supports.
Step 03—Configure Authentication
Use the safest authentication mechanism the connected service supports, with credentials stored server-side and scoped to the minimum permissions needed.
Step 04—Test and Monitor
Validate the happy path, then the failure paths — bad payloads, expired credentials, vendor outages — and confirm a human can pick up anything the workflow cannot finish.
The four stages in order: Define, then Connect, then Authenticate, then Test.
Actions an AI system is typically given
Step 1 output. Each one is a single, testable thing the workflow either did or did not do.
- Create a CRM lead
- Retrieve customer information
- Check calendar availability
- Schedule an appointment
- Send an email
- Send an internal notification
- Update a customer record
- Retrieve order information
- Generate a support ticket
- Start an automation
Methods to choose between
Step 2 output. The connected system decides which of these is even on the table.
- REST API
- Webhook
- OAuth 2.0
- API key
- Database connection
- Automation platform
- Custom adapter
What Step 4 validates before go-live
An integration is not finished when the happy path works. It is finished when the failure paths are understood and a person can pick up whatever the workflow could not complete.
- Authentication
- Request payload
- Input validation
- Responses
- Error handling
- Retries
- Rate limits
- Logging
- Human fallback
Authentication
Authentication
Authentication varies by implementation and by the third-party service being connected. TensoraAI follows the authentication model supported by each integration rather than imposing one of its own.
Bearer Tokens
A token is sent on every request in the Authorization header. The most common pattern for modern REST APIs.
Authorization: Bearer YOUR_API_TOKENAPI Keys
A long-lived key sent in a custom header. Simple to configure, so it is worth pairing with IP restrictions or scoped permissions where the vendor offers them.
X-API-Key: YOUR_API_KEYOAuth 2.0
Where a service supports it, OAuth grants delegated access to a specific account without that account's password ever being shared. Tokens are scoped and can be revoked from the vendor's own dashboard.
Webhook Secrets
A shared secret or signature lets the receiving workflow verify that an incoming event really came from the system it claims to come from, rather than from anyone who found the URL.
Never expose private credentials in the browser
Private API keys, service-role keys, OAuth client secrets, webhook secrets and database credentials must never appear in browser-side JavaScript. Anything the browser can read, any visitor can read.
Secrets belong on the server, in protected environment variables or an appropriate secrets-management system, and every one of them should be rotatable without a rebuild.
Server variables vs. public variables
Modern frameworks split configuration in two. Server-side variables are read only by code running on the server and never leave it. Public variables are inlined into the JavaScript sent to every visitor — in Next.js those are the ones prefixed NEXT_PUBLIC_, and they are appropriate for things that are already public, such as a site URL or a publishable widget id.
Never place a server secret in a NEXT_PUBLIC_ variable. The prefix is not a label — it is an instruction to the build system to ship that value to the browser. A secret placed there is published the moment the site deploys, and rotating it is the only fix.
Making Requests
Making API Requests
The examples below demonstrate the shape of a typical integration request: an authenticated HTTP call carrying a JSON body, returning a JSON result. They are generic patterns, not TensoraAI endpoints.
These are not TensoraAI endpoints
Every host below isapi.example.com and every credential is a placeholder. TensoraAI does not currently offer public self-service API access, so there is no endpoint here to call. What the samples show is the pattern your systems and ours would use to talk to each other on a real project.Request
POST https://api.example.com/v1/leads
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/jsonPayload
{
"name": "Example Customer",
"email": "customer@example.com",
"source": "website"
}Response
{
"success": true,
"id": "lead_example_123"
}The data is deliberately fictional. Real integrations are built and tested against sandbox accounts and synthetic records — never against live customer data copied into a documentation page.
Code examples
The same request in three languages. Note that in each one the token is read from an environment variable rather than written into the source — that is the point of the example as much as the HTTP call is.
curl -X POST https://api.example.com/v1/leads \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Example Customer",
"email": "customer@example.com"
}'const response = await fetch("https://api.example.com/v1/leads", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.API_TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
name: "Example Customer",
email: "customer@example.com",
}),
});
const data = await response.json();import os
import requests
response = requests.post(
"https://api.example.com/v1/leads",
headers={
"Authorization": f"Bearer {os.environ['API_TOKEN']}"
},
json={
"name": "Example Customer",
"email": "customer@example.com"
},
)
data = response.json()Webhooks
Webhooks
Webhooks allow systems to notify an AI workflow when an event occurs, enabling near-real-time automation without repeatedly polling an API. The workflow stops asking and starts being told.
A business event happens inside a third-party system. That system sends a webhook. The workflow validates it, then runs the TensoraAI workflow and its AI or business logic, which finally writes to a CRM, sends an email, updates a database, or raises a notification.
{
"event": "lead.created",
"timestamp": "2026-08-21T12:00:00Z",
"data": {
"name": "Example Customer",
"email": "customer@example.com",
"source": "website"
}
}A predictable envelope — an event name, a timestamp, and a data object — is what lets one receiving workflow handle many event types without a separate parser for each. The exact shape on a real project is set by whichever system is doing the sending.
Example business events
These event names demonstrate common implementation patterns and are not guaranteed public TensoraAI event identifiers.
| Event | Typical use |
|---|---|
| lead.created | A new lead is captured. |
| lead.qualified | A lead passes an AI qualification workflow. |
| appointment.created | An appointment is booked. |
| conversation.completed | An AI chatbot conversation ends. |
| call.completed | A voice-agent conversation ends. |
| workflow.completed | An automation finishes successfully. |
| workflow.failed | An automation needs a retry or human attention. |
Securing webhooks
A webhook URL is a door into your workflow that anyone can knock on. These are the practices that decide whether knocking is enough to get in.
- Accept events over HTTPS only.
- Verify a signature or shared secret on every request.
- Reject payloads that fail verification, without explaining why.
- Validate the payload against a schema before reading any field.
- Check the event timestamp where the sender provides one.
- Prevent replay by rejecting stale or already-processed event ids.
- Rate limit the endpoint so a broken sender cannot flood it.
- Log failed validations — they are the first sign of an attack or a misconfigured sender.
- Never trust a client-supplied identifier as proof of who the caller is.
- Respond quickly; senders time out and retry.
- Move slow work to an asynchronous job rather than holding the connection open.
Why this page does not go further
The TensoraAI website runs verified webhook endpoints of its own. Their paths, header names, secret names and verification details are deliberately not published here: knowing them would help someone probing the site and would help a prospective client evaluate us not at all.AI Voice Agents
AI Voice Agent Integrations
Voice agents become significantly more useful when connected to live business systems rather than functioning only as conversational interfaces. A voice agent that can answer questions is a demo; one that can write a qualified lead into your CRM while the caller is still on the line is a business system.
An incoming call reaches the AI voice agent, which runs its conversation logic. From there the call can branch four ways: to a CRM that creates a lead, to a calendar that creates a booking, to a knowledge base, or to a human hand-off. Lead and booking outcomes continue to a webhook or automation, which triggers the follow-up.
These are live on this site right now — you can call the agent and watch them happen.
- Answer business FAQs
- Qualify callers
- Capture caller details as a lead
- Request a consultation slot
- Escalate to a human callback
- Send an internal notification after the call
- Generate call summaries
Technically supported and built on request. Each one depends on the target system's API and on the permissions your account can grant.
- Retrieve customer information from a CRM
- Check live calendar availability
- Write the booking into a calendar
- Update CRM records mid-call
- Send a confirmation SMS
- Transfer the call to a person in real time
Stack note
TensoraAI's own voice experience is built on Vapi for real-time speech, with the business logic — lead capture, consultation requests, human hand-off — running in TensoraAI's own server-side tool handlers rather than inside the voice vendor. Assistant identifiers, keys, endpoint paths and prompt configuration are intentionally not published.AI Chatbots
AI Chatbot Integrations
A chatbot connected only to its own knowledge base can explain your business. A chatbot connected to your systems can act on behalf of the visitor — and hand over to a person the moment it should not.
A website visitor opens the AI chatbot, which draws on a knowledge and AI layer. From there it branches to a CRM that creates a lead, to an API, or to an automation that performs a business action.
Common chatbot actions
What any given chatbot can do is set by the integrations configured behind it, not by the widget itself.
- Answer frequently asked questions
- Explain products and services
- Qualify leads before a human sees them
- Collect customer information
- Create a CRM record
- Retrieve approved business data
- Create a support request
- Trigger an automation
- Hand the conversation to a person
Consent-aware loading
The chat widget on this site is provided by Chatbase and is loaded only after the visitor grants consent. Until then, no request is made to the chat vendor at all — a first-time visitor's page load is untouched by it. Where your jurisdiction or policy requires the same treatment, we build it in from the start rather than retrofitting it.Automation Workflows
Automation Workflows
TensoraAI combines triggers, AI reasoning, business rules, and actions to automate repetitive processes. The AI step is one stage in the middle — the validation before it and the logging after it are what make the workflow safe to leave running.
A trigger starts the workflow. Data is validated, then processed by AI, then a business decision is made, an action is performed, and the result is logged and followed up.
Example: lead qualification workflow
A concrete version of the shape above. Note that an unqualified lead is not discarded — it takes a different path.
A website lead is submitted and validated. An AI qualification step decides whether the lead is qualified. If it is, a CRM opportunity is created and the sales team is notified. If it is not, the lead enters a nurture workflow instead.
Technologies these workflows are built from
A given project uses some of these, never all of them. The right answer depends on where your data already lives, what your team can maintain, and what the connected vendors support.
- n8n
- Zapier
- Make
- Next.js route handlers
- Webhooks
- Supabase / Postgres
- Serverless functions
- Transactional email services
- CRM APIs
CRM & Business Systems
CRM & Business System Integrations
Commonly integrated systems, grouped by what they do. Each is a platform whose public API an integration can be built against — the categories matter more than the logos, because the same patterns apply to whichever tool your team actually uses.
CRM
- HubSpot
- Salesforce
- Pipedrive
- Other CRM APIs
Automation
- n8n
- Zapier
- Make
- Custom workflow services
Scheduling
- Google Calendar
- Calendly
- Microsoft 365
- Scheduling APIs
Communications
- Transactional email
- SMS providers
- Slack
- Microsoft Teams
Data
- Supabase
- PostgreSQL / SQL databases
- REST APIs
- Internal databases
Commerce
- Stripe
- Shopify
- WooCommerce
- E-commerce APIs
Commonly integrated, not natively bundled
Availability depends on API access, account permissions, vendor limitations, security requirements, and project scope. Naming a platform here describes an integration that can be built against its public API — it does not imply a partnership, certification, or official affiliation.Errors
Error Handling
Integrations fail. Credentials expire, vendors go down, payloads arrive malformed, and quotas run out. A workflow that handles those gracefully is the difference between a delayed notification and a lost customer.
| Status | Meaning |
|---|---|
| 200 | Request succeeded |
| 201 | Resource created |
| 400 | Invalid request |
| 401 | Authentication failed |
| 403 | Request not permitted |
| 404 | Resource not found |
| 409 | Request conflict |
| 422 | Validation failed |
| 429 | Too many requests |
| 500 | Server error |
| 503 | Service temporarily unavailable |
Six failures worth telling apart
Treating all six the same way is the most common integration bug we are asked to fix: a workflow that retries a validation error forever, or gives up on a vendor that was down for ninety seconds.
Permanent errors
Temporary errors
Validation failures
Authentication failures
Vendor outages
Rate limits
Retry behaviour
Retry these, with backoff
Temporary failures. Wait longer after each attempt, add jitter so parallel workers do not retry in lockstep, and cap the number of tries.
- 429
- 500
- 502
- 503
- 504
Do not retry these
Nothing about the request will change on the second attempt. Retrying only burns quota and delays the human who needs to fix it — unless the underlying data or configuration changes.
- Invalid credentials
- Malformed payloads
- Authorization failures
- Validation errors
Make repeatable actions idempotent
A retry that succeeds after a timeout can create the same record twice. Sending a stable idempotency key with each request lets the receiving system recognise the repeat and return the original result instead of acting again. It matters most for:
- Payments
- Bookings
- Lead creation
- Order updates
Rate Limits
Rate Limits
Rate limits vary by connected provider, project architecture, workflow type, AI vendor, and TensoraAI implementation. No universal published limit exists, and any number quoted without naming the specific provider and plan would be misleading.
No published TensoraAI limit
Public form endpoints on this site are rate limited, as any public endpoint should be. The thresholds are not published: a documented limit is a documented budget for anyone trying to abuse it. On a client project, the limits that actually constrain a workflow are usually the connected vendor's, and those are agreed during design.Designing for 429 Too Many Requests
A 429 is not an error in the usual sense — it is the other system asking the workflow to slow down. Treating it as a failure is what turns a busy afternoon into a broken integration.
Exponential backoff
Cache what does not change
Queue the work
Batch requests
Prefer events over polling
Respect third-party quotas
Security
Security by Design
Integrations hold credentials to your CRM, your calendar, your inbox and your database. These are the practices TensoraAI builds around by default — not a checklist applied at the end, because most of them cannot be retrofitted.
Server-Side Secrets
Payload Validation
Least Privilege
Webhook Verification
Encryption
Access Control
Rate Limiting
Logging & Monitoring
Secret Rotation
Human Controls
Practices, not certifications
These are engineering practices, not certifications. TensoraAI does not hold or claim SOC 2, ISO 27001, HIPAA, or PCI certification. Where your project has a formal compliance requirement, tell us early so the architecture and the vendors are chosen to fit it.Example Architecture
Example Integration Architecture
Everything above, assembled. One customer interaction enters at the top; four systems do their part in the middle; the automation layer closes the loop at the bottom.
A customer reaches the business through a website, phone, or app. An AI agent handles the interaction and passes it to the TensoraAI integration layer, which branches to a CRM, a calendar, a database, and external APIs — driving a sales workflow, a booking workflow, data storage, and an external service. Those converge on the automation layer, which sends email and SMS and creates tasks.
How TensoraAI uses these patterns
Four of these workflows are running on this website right now. They are described at the level of what they do, not how they are wired — but every one of them is something you can trigger yourself and watch happen.
Free AI Audit Lead Workflow
- Multi-step questionnaire
- Server-side validation
- Rate limit check
- Database write
- Internal notification + applicant confirmation email
The questionnaire's option lists and the server's validation allowlist are generated from one shared module, so a dropdown can never offer a value the API would reject.
See the audit funnelAI Voice Agent
- Live voice conversation
- Verified server webhook
- Tool handler
- Database write
- Background notification + booking hand-off
The database write is synchronous and the email is not — a transactional email provider taking two seconds must never become two seconds of silence on a live call.
Try the voice agentWebsite AI Chatbot
- Visitor grants consent
- Chat widget loads
- AI conversation
- Hand-off to the contact route
Nothing third-party loads until the visitor has given consent, so a first-time visitor's page load makes no request to the chat vendor at all.
About our chatbotsContact Form Pipeline
- Same-origin check + honeypot
- Schema validation
- Durable rate limit
- Database write
- Notification + confirmation email
The record is saved before either email is attempted, so an email provider outage can delay a notification but can never lose an enquiry.
Open the contact pageAPI vs. webhook
The one distinction worth understanding before an integration conversation. Everything else on this page is a variation on these two directions.
API
Your system asks another system for information, or asks it to perform an action.
“What appointment slots are available?”
You → them, whenever you choose
APIs = request information or actions
Webhook
Another system proactively tells your system that something happened.
“A new lead was just created.”
Them → you, the moment it happens
Webhooks = receive events
FAQ
Frequently Asked Questions
The questions technical teams ask before an integration conversation starts.
Need an API or Custom Integration?
Every technology stack is different. TensoraAI can connect AI agents, voice systems, chatbots, and automation workflows to your existing applications, APIs, databases, CRM, and internal business tools.
Working with an internal developer or IT team? Bring them to the first call — authentication, API contracts, data flow and testing are easier to agree before anything is built.