Assistants

Create Assistants

Create a new AI assistant with specified configuration

Docs

post/user/assistant

Request

  • Base URL: https://app.famulor.de/api
  • URL: https://app.famulor.de/api/user/assistant
  • Auth: HTTP bearer

Request body

namestring required

The name of the assistant (max. 255 characters)

voice_idinteger required

The voice ID for the assistant. Use the endpoint Retrieve Voices with the query parameter mode to get compatible voices for your engine mode.

language_idinteger required

The language ID for the assistant. Use the endpoint Retrieve Languages to get available languages.

type'inbound' | 'outbound' required

The assistant type. Options: inbound, outbound

mode'pipeline' | 'multimodal' | 'dualplex' required

The engine mode. Options: pipeline, multimodal, dualplex

timezonestring required

The time zone of the assistant (e.g., "Europe/Berlin", "America/New_York")

initial_messagestring required

The first message the assistant speaks at the start of the call (max. 200 characters)

system_promptstring required

The system prompt that defines the assistant’s behavior and personality

llm_model_idinteger

The LLM model ID. Required for mode pipeline.

Use the endpoint Retrieve Models to get available models.

multimodal_model_idinteger

The multimodal model ID. Required for modes multimodal and dualplex.

Use the endpoint Retrieve Models to get available multimodal models.

chat_llm_fallback_idinteger

Fallback LLM model ID for tool calls in multimodal/dualplex. Optional.

turn_detection_thresholdnumber

Sensitivity of turn detection in multimodal/dualplex (0-1). Default: auto

secondary_language_idsinteger[]

Array of additional language IDs that the assistant can speak. The assistant automatically recognizes the language and switches accordingly.

knowledgebase_idinteger

The knowledgebase ID to attach to this assistant

knowledgebase_modestring

How to use the knowledgebase. Options:

  • function_call - AI calls a function to search (required for multimodal/dualplex)
  • prompt - Knowledge is injected into prompt (pipeline only)
folder_idinteger

ID of a folder to place this assistant in. Must belong to your account. Send null to leave the assistant uncategorized.

label_idsinteger[]

Array of label IDs to apply to this assistant. Each label must belong to your account.

phone_number_idinteger

The ID of a phone number to assign to the assistant. Must belong to your account.

<Warning> For `inbound` assistants, the phone number must not be a caller ID type and must not already be assigned to another `inbound` assistant. </Warning>
tool_idsinteger[]

Array of IDs for custom mid-call tools to attach. Each tool must belong to your account.

tts_emotion_enabledboolean

Whether emotional text-to-speech synthesis is enabled

voice_stabilitynumber

Voice stability (0-1). Higher = more consistent

voice_similaritynumber

Voice similarity (0-1). Higher = closer to the original

speech_speednumber

Speech speed multiplier (0.7-1.2)

llm_temperaturenumber

LLM temperature (0-1). Lower = more deterministic

synthesizer_provider_idinteger

Custom TTS provider ID. If not set, selected automatically based on language. See Retrieve Synthesizer Providers.

transcriber_provider_idinteger

Custom STT provider ID. If not set, selected automatically based on language. Only for pipeline. See Retrieve Transcriber Providers.

allow_interruptionsboolean

Whether interruptions from the caller are allowed.

<Warning>Cannot be disabled for multimodal and dualplex.</Warning>

fillersboolean

Whether filler audio should be used during processing (e.g., "uh", "just a moment").

<Warning>Only available in pipeline mode.</Warning>

filler_configobject

Custom filler profiles per category. If not specified, language-dependent defaults are used. Each category is an array of short phrases.

  • positive: Fillers for affirmative responses (e.g., "Great!", "Perfect!")
  • negative: Fillers for negative/neutral responses (e.g., "Hmm.", "Mhm.")
  • question: Fillers while processing a question (e.g., "Good question.", "One moment.")
  • neutral: Fillers for neutral acknowledgments (e.g., "Okay.", "Understood.")
recordboolean

Whether the call should be recorded

enable_noise_cancellationboolean

Whether noise cancellation should be enabled

wait_for_customerboolean

If true, the assistant waits for the customer to speak first

max_durationinteger

Maximum call duration in seconds (20-1200)

max_silence_durationinteger

Maximum silence duration until re-engagement in seconds (1-360)

max_initial_silence_durationinteger

Maximum silence directly after call start before termination (1-120 seconds). Optional.

ringing_timeinteger

Maximum ringing time before canceling (1-60 seconds)

reengagement_intervalinteger

Re-engagement interval in seconds (7-600)

reengagement_promptstring

Custom prompt for re-engagement messages (max. 1000 characters)

Example: "Are you still there? Do you have any other questions?"

end_call_on_voicemailboolean

Whether to end the call if voicemail is detected

voice_mail_messagestring

Message to leave on voicemail (max. 1000 characters)

endpoint_type'vad' | 'ai'

Voice activity detection type. Options: vad, ai

endpoint_sensitivitynumber

Endpoint sensitivity (0-5)

interrupt_sensitivitynumber

Interrupt sensitivity (0-5)

min_interrupt_wordsinteger

Minimum number of words before interruption is allowed (0-10). Set to enable.

ambient_sound'off' | 'office' | 'city' | 'forest' | 'crowded_room' | 'cafe' | 'nature'

Background ambient sound. Options: off, office, city, forest, crowded_room, cafe, nature

ambient_sound_volumenumber

Ambient sound volume (0-1)

is_webhook_activeboolean

Whether webhook notifications are enabled

webhook_urlstring

The webhook URL for post-call notifications. Required if is_webhook_active is true.

send_webhook_only_on_completedboolean

Whether to send webhooks only for completed calls (not for failed/no-answer)

include_recording_in_webhookboolean

Whether to include the recording URL in the webhook payload

post_call_evaluationboolean

Whether AI post-call evaluation is enabled

variablesobject

Key-value pairs of custom variables that can be used in prompts via {{variable_name}}

conversation_inactivity_timeoutinteger

Minutes of chat inactivity before the conversation is considered ended (1–1440)

conversation_ended_retriggerboolean

Whether the conversation can be restarted after inactivity end

conversation_ended_webhook_urlstring

Webhook URL invoked when a chat conversation ends due to inactivity. Separate from the call webhook.

Response

Success Response

messagestring

Success message confirming the creation of the assistant

Changes

No recorded changes to this operation across all 1 revision of this API.