An organization represents a physical location—your practice, clinic, or office. It stores the details your agent needs to answer questions accurately.
const response = await fetch("https://api.helloannie.com/v1/organizations", { method: "POST", headers: { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, body: JSON.stringify({ name: "Downtown Dental", phone: "+15551234567", timezone: "America/New_York" })})const { data } = await response.json()// data.id contains the organization ID for the next steps
import requestsresponse = requests.post( "https://api.helloannie.com/v1/organizations", headers={ "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, json={ "name": "Downtown Dental", "phone": "+15551234567", "timezone": "America/New_York" })data = response.json()["data"]# data["id"] contains the organization ID for the next steps
A bot is your AI agent. It handles conversations and can be trained with custom knowledge specific to your organization.
const response = await fetch("https://api.helloannie.com/v1/bots", { method: "POST", headers: { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, body: JSON.stringify({ name: "Annie", orgId: "YOUR_ORG_ID", greeting: "Hi! Thanks for reaching out. How can I help you today?" })})const { data } = await response.json()// data.id contains your new bot ID
import requestsresponse = requests.post( "https://api.helloannie.com/v1/bots", headers={ "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, json={ "name": "Annie", "orgId": "YOUR_ORG_ID", "greeting": "Hi! Thanks for reaching out. How can I help you today?" })data = response.json()["data"]# data["id"] contains your new bot ID
curl -X POST https://api.helloannie.com/v1/bots \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Annie", "orgId": "YOUR_ORG_ID", "greeting": "Hi! Thanks for reaching out. How can I help you today?" }'
Bots Guide
Configure bot settings, integrations, and parent-child relationships.
Annie supports multiple training modules to teach your agent how to respond—FAQs, insurances, office information, workflows, and more. For this quickstart, we’ll use a template, which bundles common training into a single configuration you can apply to your bot.Templates are pre-built for common use cases like dental scheduling agents or general FAQ agents.
Since the API is invite-only, part of your onboarding includes setting up your first template. We’ll add default templates to your account so you can get up and testing quickly—then tweak and fine-tune them later.
Templates may contain variables that must be filled in when applying. The variables field is required—pass an empty object {} if the template has no variables. Check your template’s variables array to see what values are needed.More documentation on template variables is coming soon.
Training Guide
Learn about all the training modules—FAQs, insurances, workflows, and more.