Skip to main content

Applications (IVR)

Manage IVR applications and their actions (v2 manager API). Available as mgr.applications / mgr.Applications / mgr.applications, with a nested per-application local-automations sub-resource (actions in TypeScript/Go, local_automations in Rust).

List applications (auto-paginated)

for await (const app of mgr.applications.list()) {
console.log(app.module);
}
const all = await mgr.applications.listAll();

Create, get, update, delete

const created = await mgr.applications.create({ name: "Main IVR", module: "simpleMenu" /* … */ });
const app = await mgr.applications.get(created.item.id);
await mgr.applications.update(app.item.id, { /* ApplicationUpdateBody */ });
await mgr.applications.delete(app.item.id);

// bulk delete:
await mgr.applications.deleteMany(["id-1", "id-2"]);

Modules and dispatch

const modules = await mgr.applications.listModules();
await mgr.applications.dispatch(appId, "onEnter", true /* async */);

Actions (local automations)

for await (const action of mgr.applications.actions.list(appId)) console.log(action);
const action = await mgr.applications.actions.create(appId, { /* RestCreateLocalAutomationBody */ });
await mgr.applications.actions.update(appId, action.item.id, { /* … */ });
await mgr.applications.actions.delete(appId, action.item.id);

To list local automations across all applications (not scoped to one app), use allLocalAutomations (auto-paginated):

for await (const a of mgr.applications.allLocalAutomations()) console.log(a.id);

Clone, bulk update & diagnostics

Clone an application, bulk-update several at once, or inspect the available action catalog and recent application errors.

const copy = await mgr.applications.clone(appId);
await mgr.applications.bulkUpdate({ /* BulkUpdateApplicationsRequest */ });
const actions = await mgr.applications.listActions();
const errors = await mgr.applications.listErrors();

Reference