API Reference Guava v#0.34.0

Copy Markdown View Source

Modules

The Elixir SDK for the Guava voice-agent platform.

Behaviour for a voice agent, in the spirit of GenServer/Phoenix.LiveView: use Guava.Agent, give it a persona, and implement only the callbacks you need.

Authentication strategies for the Guava API.

API-key authentication.

CLI-session authentication with OAuth token refresh.

Guava-deploy token-file authentication.

A handle to a live call, passed to your Guava.Agent handlers.

Information about an incoming or outgoing call.

A public-switched-telephone-network (phone) call.

A SIP call.

A browser (WebRTC) call.

An outbound calling campaign.

List, fetch, and manage outbound campaigns and their contacts.

A supervised channel connecting an agent module to callers. Use it as a child spec in your own supervision tree

Account-level client for Guava's HTTP API.

Client-to-server commands sent over a call's WebSocket connection.

Accept the current inbound call.

A candidate action returned in an action suggestion.

Suggest zero or more actions in response to an action request.

Answer a question the agent relayed to the developer's system.

Return matched/other choices for a searchable-field query.

Inform the agent that a developer callback errored.

Register this connection as an inbound listener.

Have the agent read a script verbatim.

Reconnect to an in-progress outbound session.

Inform the server which developer callbacks are registered.

Reject the current inbound call.

Ask the agent to retry the current task.

Send a text message to the caller.

Send a free-form instruction to steer the agent.

Enable or disable the agent's ability to press DTMF digits.

Set the primary and secondary spoken languages.

Set the agent's persona (name, organization, purpose, voice).

Assign a task (objective + checklist of action items) to the agent.

Store a JSON-serializable call-scoped variable.

Start an outbound PSTN call.

Transfer the call to another destination.

Resolves the Guava base URL and locates the CLI config file.

A campaign contact to dial.

Parse natural-language time expressions into concrete date ranges via the LLM endpoint.

Filter ISO-8601 datetime slots by natural-language query, via the LLM endpoint.

Question-answering over documents.

The single error type raised/returned across the SDK.

Server-to-client events received over a call's WebSocket connection.

A field/action item was collected.

The caller requested an action. Expects an action suggestion.

The caller asked a question relayed to the developer's system. Expects an answer.

The agent said something.

The bot session ended.

The caller said something. Utterances sharing an id supersede earlier ones.

A searchable-field query needs matching choices.

A DTMF keypad digit was pressed.

An error occurred during the call.

An escalation was requested by a human or the agent.

The agent wants the developer to execute an action.

An inbound call has arrived.

The caller declared an intent (legacy).

An outbound call connected.

An outbound call failed to connect.

Deprecated. Retained for compatibility with older servers.

A socket health heartbeat.

A task finished.

A warning occurred during the call.

A structured-data collection instruction given to the agent during a call.

The action to take for an incoming call: accept or decline.

Accept an incoming call.

Decline an incoming call.

Match a caller intent against a fixed set of choices using the Guava LLM endpoint, constrained so only the provided choices can be returned.

Thin wrapper over Guava's server-side LLM endpoint (v1/llm/generate).

Information about a phone number on your Guava account.

Retrieval-augmented-generation helpers.

Behaviour for an embedding model used by vector-store implementations.

Behaviour for a QA generation model backing local-mode Guava.DocumentQA.

RAG via the Guava server API (v1/rag/*). Uploads plain-text documents; the server stores and answers over them. Handles content-addressed keys and namespace scoping.

Behaviour for a vector store backing local-mode Guava.DocumentQA.

A checklist item instructing the agent to say a statement verbatim.

Wire representation of a Guava.Field.

A reliable, self-reconnecting GuavaSocket connection.

The GuavaSocket framing protocol: a reliable-messaging layer carried as JSON text frames over a WebSocket. Mirrors guava.socket.protocol.

Pure state machine for the GuavaSocket reliable-messaging layer.

An action suggested in response to a caller's request, returned from an on_action_request handler.

Drive an agent module against Guava's v1/test-agent endpoint — no phone needed.

Drives an agent under test against Guava's v1/test-agent endpoint.

A free-form checklist item describing something for the agent to do.

Shared value types, enums, and validators used across the wire protocol.

Optional, opt-in usage reporting (uploads batched method-call/exception events to v1/upload-telemetry).