Sign inGet Started

Use data in a voice sequence

Define the data a call entry accepts, then use that data in supported step fields. A reminder might accept a customer name and appointment time from the application that starts the call.
Use the field picker to see which sources and value modes the selected step supports.

Define entry data

  1. Select the Voice call entry in your draft.
  2. Add its data fields and mark the required ones.
  3. Select a later step and open its expanded editor.
  4. Choose a field from Available data, then preview it with representative entry data.
An API call's sequence.trigger_data must be an object matching the selected entry's schema. Supply {} when the entry needs no data. An incoming number route supplies {}, so its entry must accept an empty object. Keep incoming fields optional and handle missing values in later steps.
Application data is separate from call identity. A field named caller supplied by your application does not establish who is calling or grant permission to use a number.

Map a value or compose text

Supported fields offer fixed values, values from earlier steps, text with inserted values, or fx expressions. Use a direct value for a typed field and text with inserted values for spoken sentences. A string containing digits remains text.
For example, define a required string field named customer_name on the entry. In a supported speech field, combine Hello, a space, the field value, and , your appointment is confirmed. Preview with {"customer_name":"Ada"} to inspect the prepared text.
Voice expressions read entry fields as trigger.data.customer_name. Earlier eligible outputs use steps.<step_id>.output. The source picker helps you choose the correct step and field.

Handle missing data and branches

Optional fields may be absent, null, or empty. Preview those cases and choose an explicit fallback when it is appropriate. A step on an untaken path has no output in that run.
Call observations live under execution. For example, the original caller's number can be absent. A guarded expression reads it safely:
Codebeispiel
execution.call.orig != null && has(execution.call.orig.address) ? execution.call.orig.address : ''
These observations describe telephone endpoints; they do not authenticate a person. Preview needs an execution sample when a reached expression uses execution. Without one, the preview stops before evaluating that step. Supply it through Advanced scenario JSON, following the shape reported by validation.
Private keypad observations are unavailable to later expression sources or retained step detail. Do not design a later speech or result field around private digits.

Pass data through a transfer

A local Transfer supplies a new object to the destination entry. Map the values that entry needs and check its required fields.
The destination receives fresh trigger.data, and earlier step outputs are cleared. Call identity, recording state, and execution limits continue. Passing a value explicitly is necessary when the new entry needs information from the previous path.

Next steps

Verwandte Ressourcen

Weiter mit der Dokumentation, Anleitungen und Beispielen zu diesem Thema. Die Ressourcen sind auf Englisch.