Start Call
Exactly one Start Call node exists per agent, it has no incoming edges, and every call begins on it. It does three jobs in order: fetch anything the agent should already know, say the disclosure and the greeting, then run the first conversational turn.
Greeting and prompt are not the same field
This is the one thing worth getting right before anything else.
| Greeting | Prompt | |
|---|---|---|
| What it is | Fixed text, spoken verbatim | Instructions to the model |
| Who writes the words | You | The model, guided by you |
| Varies per call | Only through {{variables}} | Yes, it responds to the caller |
| Costs a model call | No | Yes |
A greeting is played and then the conversation begins. It is the right place for anything that must come out identically every time — a company name, a regulatory line, a fixed opening. The prompt handles everything after that.
Leave the greeting empty and the agent says nothing until the caller speaks. On an inbound call that is often correct; the caller rang you and will say hello. On an outbound call it is nearly always wrong — the person who answered hears silence and hangs up.
Fields
namestringdefault: Start Call
Short label shown on the canvas and in call logs. No runtime effect.
greeting_typetext | audiodefault: text
Whether the greeting is spoken by the voice model from text, or played from a pre-recorded audio file.
greetingstring
The text spoken at the start of the call. Supports {{template_variables}}.
Empty means no greeting.
greeting_recording_idrecording
The audio file played instead, when greeting_type is audio.
recording_disclosure_enabledbooleandefault: on
Speak a short disclosure before the greeting. Unset follows the platform default, which is on. See Recording disclosure.
recording_disclosurestring
What the agent says. Blank uses the platform default wording.
promptstringrequired
The system prompt for the opening turn. Supports {{template_variables}} from
pre-call fetch and the initial context.
allow_interruptbooleandefault: false
Whether the caller can talk over the agent mid-utterance. Leave it off for a node whose words are a disclosure that must be heard in full.
add_global_promptbooleandefault: true
Prepend the Global node’s prompt to this one at runtime.
delayed_startbooleandefault: false
Wait before speaking after the line is answered.
delayed_start_durationnumberdefault: 2.0
How long to wait, in seconds. Between 0.1 and 10.
extraction_enabledbooleandefault: false
Run a variable-extraction pass on this node’s exchange. See Context and variables.
tool_uuidsstring[]
Tools the agent may call during the opening turn.
document_uuidsstring[]
Knowledge Base documents available on this node.
pre_call_fetch_enabledbooleandefault: false
Look the caller up before the call starts. See Pre-call data fetch.
Recording disclosure
Every call on Decibyl is recorded, and three separate regimes expect the person on the other end to be told:
- India — under the DPDP Act a call recording is personal data collected from the person who answered, and telecom practice expects disclosure.
- Two-party-consent US states — twelve of them require consent from everyone on the call, not just the party recording.
- Your own customers’ expectations, which are usually stricter than either.
So it defaults to on, and stays on until somebody deliberately turns it off. The setting lives on the node rather than in organisation settings, which means it travels with the agent — versioned alongside everything else, and readable at call start without a database round-trip on the critical path.
Delayed start
An outbound call connects the moment the network says it did, which is often a fraction before the person has the phone at their ear. An agent that starts talking immediately loses its first few words.
Switching on Delayed Start waits — two seconds by default — before speaking. It costs you nothing on the model side, because nothing is generated during the wait.
Pre-call data fetch
With Pre-Call Data Fetch on, Decibyl POSTs to a URL of yours before the call begins, and merges the JSON it gets back into the call context as template variables. The request body carries the calling and called numbers, so your endpoint can look the person up.
The difference it makes:
Agent: Thanks for calling Sunrise Dental. Can I take your name?Caller: Priya Menon.Agent: And do you have an appointment with us already?Agent: Hello Priya — I can see you're booked with Dr Rao on Thursday. Is that what you're calling about?Two turns saved on every single call, which on a few thousand calls is real money as well as a better experience.
The full setup, including authentication and what happens when your endpoint is slow or down, is in Pre-call data fetch.
Rules
- Exactly one Start Call node per agent. The editor will not let you save a second, or none.
- No incoming edges. Nothing transitions to the start of a call. If you need to return to the opening behaviour later, use an agent node.
- At least one outgoing edge, unless the whole conversation is the greeting.