Sign inGet Started

bird voice calls create

Usage

Exemple de code
bird voice calls create [flags]

Description

Create a call

Preview: run bird voice --help to discover installed commands and bird update --check for newer releases. Installation: https://bird.com/docs/cli. If calls create is absent, use the HTTP API or SDKs. Places a real outbound call after browser confirmation and starts the active published sequence, or an inline sequence.definition from --body-file, after the recipient answers. Requires voice_management:write and voice:write. Normal calling charges apply. Reuse the idempotency key and the same input for retries. Confirmation expires after 90 minutes; a missing result does not prove the call never ran. Acceptance does not prove a connected call.

Build the request from flags, a JSON CreateVoiceCallRequest body via --body-file ("-" reads stdin), or both — a flag overrides the matching body field. Run --example to print a ready-to-edit body, or --dry-run to print the resolved request without sending it.

Browser confirmation: the review link goes to stderr, not stdout, as next[].url in a JSON line that also carries confirmation_id. The command then waits and prints the result on stdout; --confirmation-id waits on an existing one.

Examples

Exemple de code
# print the body shape (no credentials needed)
bird voice calls create --example

# the body it prints:
Exemple de code
{
  "from": "+12025550100",
  "sequence": {
    "entry_node_id": "start",
    "id": "vsq_01krdgeqcxet5s7t44vh8rt9mg",
    "trigger_data": {}
  },
  "to": "+12025550101"
}
Exemple de code
# prepare a call for browser confirmation
bird voice calls create --body-file call.json --idempotency-key "${IDEMPOTENCY_KEY:?Set a fresh key for a new call; reuse it for retries}"

# inspect the same request without creating a confirmation
bird voice calls create --body-file call.json --idempotency-key "${IDEMPOTENCY_KEY:?Set a fresh key for a new call; reuse it for retries}" --dry-run

# run an inline sequence.definition instead of a saved sequence: save this body as inline-call.json
Exemple de code
{
  "from": "+12025550100",
  "to": "+12025550101",
  "sequence": {
    "entry_node_id": "start",
    "trigger_data": {},
    "definition": {
      "schema_version": 1,
      "expression_environment": "bird.cel.v1",
      "nodes": [
        {
          "id": "start",
          "type": "trigger.start_call",
          "type_version": 1,
          "config": {},
          "input": {},
          "connections": { "event": { "node_id": "greet", "port": "input" } }
        },
        {
          "id": "greet",
          "type": "voice.say",
          "type_version": 1,
          "config": {},
          "input": { "text": "Hello from Bird.", "language": "en" },
          "connections": { "next": { "node_id": "done", "port": "input" } }
        },
        {
          "id": "done",
          "type": "logic.exit",
          "type_version": 1,
          "config": { "status": "succeeded", "reason": "greeted" },
          "input": { "output": {} }
        }
      ]
    }
  }
}
Exemple de code
bird voice calls create --body-file inline-call.json --idempotency-key "${IDEMPOTENCY_KEY:?Set a fresh key for a new call; reuse it for retries}"

Options

Call

NameDescription
--fromPermitted caller number in E.164 format (required; or in --body-file)
--toRecipient number in E.164 format (required; or in --body-file)
--sequence-idPublished voice sequence to run (vsq_ prefix); omit when the body supplies sequence.definition
--entry-node-idVoice call entry node in the sequence (required; or in --body-file)
--trigger-dataEntry data as a JSON object; use {} when no data is needed (required; or in --body-file)
--ringing-timeout-seconds <n>Ringing timeout in seconds, from 5 to 120 (default 30)

Request

NameDescription
--body-fileRead the JSON request body from this file; "-" reads stdin
--examplePrint a complete example request body, then exit
--dry-runPrint the resolved request without sending it, then exit
--idempotency-keyStable key for this intended call; reuse with identical input to retrieve the same confirmation (required)

Options

NameDescription
--response-schemaPrint the fields this command returns, then exit
--confirmation-idWait for an existing confirmation of this exact request
NameDescription
bird voice calls getGet a call
bird voice calls listList calls

Poursuivez avec la documentation, les guides et les exemples sur ce sujet.