# Voice Agent Toolkit

Endpoints your voice agents call mid-conversation to check availability and book, reschedule or cancel an appointment for the caller.

**Base URL:** `https://api.trustpager.com/functions/v1/api/v1`

## Endpoints

### POST /agent/v1/voice/scheduling/:event_type_id/book

Voice agent toolkit — book an appointment for the caller.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-scheduling-event-type-id-book.md)

### POST /agent/v1/voice/scheduling/:event_type_id/slots

Voice agent toolkit — check slot availability for a booking type.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-scheduling-event-type-id-slots.md)

### POST /agent/v1/voice/cancel-booking

Voice agent toolkit — cancel a booking keyed by caller phone.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-cancel-booking.md)

### POST /agent/v1/voice/lookup-account

Voice agent toolkit — summarise the caller records.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-lookup-account.md)

### POST /agent/v1/voice/pricing

Voice agent toolkit (optional, opt-in per agent) — read the workspace live product pricing from the catalogue so the agent never quotes prices from memory. Wire this tool only into agents whose workspace wants pricing shared by voice.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-pricing.md)

### POST /agent/v1/voice/request-callback

Voice agent toolkit — record a callback request.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-request-callback.md)

### POST /agent/v1/voice/reschedule-booking

Voice agent toolkit — reschedule a booking keyed by caller phone.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-reschedule-booking.md)

### POST /agent/v1/voice/schedule-callback

Voice agent toolkit — schedule an automatic AI callback at the time the caller requested (rings them back from the agent's outbound number). Pass callback_day + callback_time + state; the server resolves the absolute date in the caller's timezone, so never compute a date yourself.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-schedule-callback.md)

### POST /agent/v1/voice/take-message

Voice agent toolkit — log an inbound message from the caller.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-take-message.md)

### POST /agent/v1/voice/unsubscribe

Voice agent toolkit: stop contacting the caller. A caller we recognise is unsubscribed across their contact records; a caller we do not recognise has their number added to the voice do-not-call list, so an opt-out is always honoured.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-unsubscribe.md)

### POST /agent/v1/voice/work-orders

Voice agent toolkit — read work order status for the caller deals.

**Scopes:** `agent_toolkit:use` — [full detail](./agent-toolkit-voice/post-agent-v1-voice-work-orders.md)
