# Salon Booking Agent

- **URL:** https://agentline.cloud/build/salon-booking
- **Category:** Beauty
- **Keywords:** AI receptionist salon, salon appointment booking AI, spa booking phone agent, barbershop AI receptionist, fill cancellations AI calls

> Service-menu booking, reschedules, cancellation-fill waitlist

A front-desk line for salons, spas, and barbershops. The agent books by service and stylist preference, handles reschedules, and calls down the waitlist when a chair opens up.

## How it works

1. Publish the number as the booking line so stylists stay on the floor.
2. The agent captures service, stylist preference, and window, then offers two slots.
3. Cancellations go on a waitlist with callback numbers.
4. When a chair opens, the agent calls down the waitlist until the slot fills.

## Greeting

Thanks for calling the salon. Booking, rescheduling, or something else?

## Voicemail

Thanks for calling the salon. Leave your name, number, and what you would like to book and we will call you back.

## System prompt

```
You are a salon booking agent on a live call. Keep every spoken turn under 15 words. Sound friendly.

Collect: service, stylist preference (or first available), and day or window.

Rules:
- Respect service durations from the menu — do not stack a color into a cut slot.
- Offer at most two open slots, then confirm name and callback number.
- For reschedules, confirm the old slot is released before booking the new one.
- For cancellations, ask if they want the waitlist and take a callback number.
- State the late-cancel policy once if they ask. Never take card numbers on the call.
```

## Python

```python
from agentline import AgentLine

client = AgentLine(api_key="al_live_...")

agent = client.agents.create(
    name="Salon Booking Agent",
    voice_id="female-2",
    initial_greeting="Thanks for calling the salon. Booking, rescheduling, or something else?",
    voicemail_message="Thanks for calling the salon. Leave your name and number and we will call you back.",
    system_prompt="""You are a salon booking agent. Keep turns under 15 words.
Book by service and stylist preference. Confirm the slot, name, and callback number.
Never take card numbers on the call.""",
)

number = client.numbers.buy(agent_id=agent.id, country="US", area_code="415")
print("Salon booking line:", number)

# A chair opened up — call down the waitlist until it fills.
waitlist = ["+14155557890", "+12125551212"]
for to in waitlist:
    call = client.calls.create(
        agent_id=agent.id,
        to=to,
        system_prompt="A Saturday 2pm cut with Riley just opened. Offer it to this waitlisted client. If they decline, thank them and hang up.",
    )
    print(to, call)
```

## Node.js

```ts
import AgentLine from "agentline";

const client = new AgentLine({ apiKey: "al_live_..." });

const agent = await client.agents.create({
  name: "Salon Booking Agent",
  voiceId: "female-2",
  initialGreeting: "Thanks for calling the salon. Booking, rescheduling, or something else?",
  systemPrompt: `You are a salon booking agent. Keep turns under 15 words.
Book by service and stylist preference. Never take card numbers on the call.`,
});

const number = await client.numbers.buy({
  agentId: agent.id,
  country: "US",
  areaCode: "415",
});
console.log("Salon booking line:", number);

// A chair opened up — call down the waitlist until it fills.
for (const to of ["+14155557890", "+12125551212"]) {
  const call = await client.calls.create({
    agentId: agent.id,
    to,
    systemPrompt: "A Saturday 2pm cut with Riley just opened. Offer it to this waitlisted client.",
  });
  console.log(to, call);
}
```

## Tell your AI

```
Create a salon booking and waitlist agent on AgentLine. Follow https://agentline.cloud/skill.md then apply https://agentline.cloud/build/salon-booking.md
```

## FAQ

**Can an AI agent book salon appointments?**

Yes. Service, stylist preference, and window in; confirmed slot out. The transcript is the record your book or POS step reads.

**How does the waitlist backfill work?**

Cancellations collect callback numbers. When a chair opens, the agent places outbound calls down the list with a per-call prompt until someone takes the slot.

**What about deposits for no-shows?**

State the policy on the call, but keep cards off it. Send a pay link or take the card at the front desk — the prompt refuses card numbers.
