Save call flow draft
Creates or updates the working draft of a phone number’s call flow. The draft is validated leniently and is not live until published. Optimistic concurrency: pass the lock_version returned by a previous read to detect a concurrent edit, and base_published_version to detect a publish that happened mid-edit.
PHONE_NUMBERS_WRITEBehavior
Creates or updates the working draft of a phone number’s call flow. The draft is validated leniently and does not affect live routing until you publish it. The{number} path parameter is the Allo phone number in E.164 format.
Send the full definition document and the schema_version it conforms to.
Going live
Saving a draft never changes live routing. There are two ways to put it on the air:- Publish it yourself with Publish call flow, passing the
lock_versionfrom this response. This changes live inbound routing immediately. - Hand it to a person using the
confirmation_urlin this response: a link where a signed-in user opens this draft, reviews it, and publishes it. Prefer this when a human should approve the change.
confirmation_url as opaque — pass it through verbatim; never build it from a hardcoded app host or parse it. (It is present only while the response status is DRAFT.)
Concurrency
lock_version— pass the value from the draft you read. Omit it (or sendnull) to upsert the draft without a concurrency check. A stale value returns409 CALL_FLOW_STALE_LOCK.base_published_version— the published version your edit is based on. If someone published a new version while you were editing, this returns409 CALL_FLOW_CONCURRENT_EDIT.
Errors
400 CALL_FLOW_SCHEMA_VERSION_MISMATCH—schema_versiondoes not match the server’s current version.400 CALL_FLOW_INVALID— thedefinitionis malformed or failed validation.404 PHONE_NUMBER_NOT_FOUND— the number is not one of your account’s numbers.409 CALL_FLOW_STALE_LOCK/409 CALL_FLOW_CONCURRENT_EDIT— see Concurrency above.
Authorizations
Path Parameters
Allo phone number in E.164 format
"+14155551234"
Body
The call flow tree document (opaque; camelCase keys).
Must match the server's current call flow schema version.
1
The lock_version of the draft you are updating; omit or null to upsert without a concurrency check.
The published version your edit is based on; a mismatch means someone published mid-edit (409).
Force the engine subset; inferred from the definition when omitted.
NESTED_IVR, FULL_FLOW Response
The saved draft
A version of a phone number's call flow.