Resia

Handle phone calls like a human, without the human.

Agents that make and answer phone calls, navigate menus, holds, and transfers like a real person.

Buy $RESIA
Example
CompletedOutbound to (617) 555-01420:52

Result

✗ Confirmed✓ Reschedule requested
Preferred new time
Thursday, before 11 AM
Notes
Work conflict tomorrow afternoon.

Conversation

Agent

Hi Maria, this is Brightside Family Dental calling to confirm your appointment with Dr. Patel tomorrow at 2:30 PM. Does that time still work for you?

Maria

Oh, tomorrow? I have a work thing at two, actually.

Agent

No problem, I can help with that. What day and time would work better?

Maria

Thursday morning. Anytime before eleven.

Agent

Thursday morning before 11 AM. Got it. The office will text you today to lock that in. Anything else I can help with?

Maria

No, that's it. Thank you!

Send and receive calls.

One Call Agent can both answer and place calls for you.

Inbound: answer calls

Buy a number in the portal and connect it to an agent. To greet each caller by name, turn on the call.incoming webhook to allow your server to send that caller's details to the agent.

Example
CompletedInbound from (857) 555-01991:14

Result

✓ New patient✓ Needs staff follow up
Insurance
Delta Dental PPO
Preferred time
Wednesday afternoon

Conversation

Agent

Thanks for calling Brightside Family Dental. How can I help?

Caller

Hi, do you take Delta Dental? And do you have anything for a cleaning next week?

Agent

Yes, we accept Delta Dental PPO. Which days next week work best for a cleaning?

Caller

Wednesday afternoon would be ideal.

Agent

Wednesday afternoon. I'll pass that to our scheduling team, and they'll text you today with a time. Can I get your name and the best number to reach you?

Outbound: it calls for you

Your app sends POST /v1/calls with a number and the inputs, and Resia places the call. If no one picks up, the agent leaves a message or hangs up, as you choose.

Example
CompletedOutbound to (781) 555-01640:31

Result

✗ Reached person✓ Left voicemail
Next step
Try again tomorrow

Conversation

Voicemail detected

Agent

Hi Alex, this is Brightside Family Dental about your referral to Dr. Kim. Please call us back at 617 555 0100 when you have a minute. Thank you.
Message left, call ended

Built for real world phone calls.

The agent handles phone menus and hold music, then runs tools while it keeps talking. Follow this example call to a pharmacy.

Warm transfer. The agent puts the caller on hold, briefs a person on a private line, then joins everyone on one call.

Multi-person calls. Add multiple participants from your team to a call.

  1. 0:02

    It navigates the phone menu

    The agent listens to the menu and presses the right key on the keypad.

    Phone menu: pressed 3 for pharmacy
  2. 0:06

    It waits on hold

    The agent stays on the line through hold music and speaks up when a person picks up.

    On hold for 2m 12s
  3. 2:18

    It asks the question

    When the pharmacist answers, the agent asks the one question it was sent to ask.

    Hi Dan, I'm calling to check whether you have amoxicillin 500 mg capsules in stock today.

  4. 2:24

    Runs a tool while talking

    Checks the requested quantity in your system while asking the pharmacy about pickup.

    Async Tool Calling · Example

    At the same time

    Your tool runs

    Look up the requested quantity

    The agent keeps talking

    “What time do you close today?”

    Then the result arrives

    Requested quantity: 30 capsules

    “Could you fill 30 capsules?”

  5. 3:41

    It writes down the answer

    The answer from the call is sent to your system, ready for use.

    in_stock: true · quantity: About 60 capsules

Appointment reminders

Call Agent · Version 7, saved today

Example
Instructions
Call $first_name to confirm the visit with $dentist_name at $appointment_time. If the time does not work, ask for a better day and time.
Live-call model
AnthropicOpenAI
Voice
CartesiaFish
Database
Office hours and insurance.json
Warm transfer
Front desk
Voicemail
Leave a messageHang up
Result schema
confirmedreschedule_requestedpreferred_new_timenotes

Creating a Call Agent

Write instructions in plain sentences, or let Butler draft them.

  • Model and voice. Pick the model from Anthropic or OpenAI, and a voice from Cartesia or Fish.
  • Database. Import relevant information using a JSON export. The agent looks up answers during the call.

Keep talking while tools do the work.

Check information or take action in your systems while the agent keeps listening and talking. It brings the result into the conversation when it's ready.

See how it works
Async Tool Calling · Example

At the same time

Your tool runs

Check appointment availability

The agent keeps talking

“Do mornings or afternoons work better?”

Then the result arrives

Open times: 10:00 and 14:00

“There's an opening at 10. Would that work?”

Send results to your system

Define the result in your own JSON Schema, or let Butler help you figure out the fields. When the call ends, Resia sends it to your webhook.

{
  "type": "call.ended",
  "call": {
    "id": "01K1SA3F7M8QW2V5C9H4YTB0KD",
    "call_agent_id": "01K1S7RA9M8QW2V5C9H4YTB0AG",
    "call_agent_name": "Appointment reminders",
    "call_agent_version_id": "01K1S9V9Q0RS7X4T2N6BJ8ZDE5",
    "status": "completed",
    "to_phone_number": "+16175550142",
    "duration_secs": 52,
    "tags": ["reminders"],
    "analysis": {
      "confirmed": false,
      "reschedule_requested": true,
      "preferred_new_time": "Thursday, before 11 AM",
      "notes": "Work conflict tomorrow afternoon."
    }
  }
}

Call a whole list at once

Send the list once. Resia checks each row on its own, so the rest keep going even if one number is bad. You can cancel a batch at any time.

Thursday reminders

Call batch · Appointment reminders · 3 accepted, 2 rejected

Example
Tofirst_nameStatus
+1 617 555 0142MariaCompleted
+1 617 555 0156JordanVoicemail left
+1 857 555 0121LeeIn progress
+1 555 01ChrisRejected: not a valid phone number
+1 508 555 0133emptyRejected: first_name is required

Default limits: 30 calls a minute, 300 an hour, 2,000 a day, and 10 to one number a day. Ask us to raise them. Calls go to US and Canada numbers only.

Put a Call Agent on the phone today.

Create a Call Agent that handles phone calls like a human, 24/7.

Get a call now

A Resia agent will call you in about a minute, walk you through the platform, and put you through to our founder if you want to talk to him.

Consent is not a condition of any purchase. Message frequency may vary. Message and data rates may apply. See our Messaging Terms (resia.work/sms-terms) and Privacy Policy (resia.work/privacy). United States and Canada numbers only. Asking for a call means we may call this number. The call is recorded.

Get $RESIA

Tell us who you are and we will take you straight to the calendar with your details already filled in.