Developer Docs

Build on APEX CONNECT

Everything you can do in the dashboard, you can do from your terminal, your code, or your CI pipeline — launch calling campaigns, manage appointments, run workflows, and subscribe to live events as they happen.

C:\Users\you> apex
    _     ____   _____ __  __
   / \   |  _ \ | ____|\ \/ /
  / _ \  | |_) ||  _|   \  /
 / ___ \ |  __/ | |___  /  \
/_/   \_\|_|    |_____|/_/\_\

  CONNECT
  A Bulk Lead Converting Voice AI Platform

Jump into building with APEX CONNECT:

  1. Sign in           apex login --endpoint https://app.aimstudio.co.in
  2. Pick a workspace  apex tenant list
  3. Watch it live     apex events stream

Run 'apex --help' for every command, or 'apex doctor' to check your setup.

Developer access is part of every APEX CONNECT workspace. The CLI installs from npm in one command — no sign-in needed to get it. Sign in and open API Center to create API keys and see live docs generated for your own endpoints.

Starting from nothing? These five steps take you from an empty machine to a working apex command — install, sign in, pick a workspace. Under a minute if you already have Node.js.

Install

1

Install

One command, any platform. Requires Node.js 16 or newer — check with node -v. npm fetches the prebuilt binary for your operating system and CPU; there is nothing to compile.

npm install -g apex-connect

On macOS or Linux, prefix with sudo if you hit a permissions error. npm installs a prebuilt binary for your platform — Windows, macOS and Linux, Intel and ARM. Would rather not use Node at all? Ask us for a standalone executable.

2

Verify the install

Prints the version, platform and build details.

apex version

If Windows answers "'apex' is not recognized", open a new terminal — a shell reads PATH only when it starts, so a window opened before the install will not see the command.

3

Sign in

First time on a machine only — this records the backend as a context. Your browser opens, you approve, and the terminal receives its credentials. They go to the OS keychain, never a plain file.

apex login --endpoint https://app.aimstudio.co.in

Every time after that, plain apex login is enough.

4

Choose your workspace

Use the real workspace name — placeholder brackets like <name> are not part of the command, and Windows cmd reads < as a redirect and answers "The syntax of the command is incorrect."

apex whoami
apex tenant list
apex tenant use acme-clinic
5

(Optional) Check everything works

Verifies config, endpoint reachability, TLS, credentials, keyring access, clock skew and version compatibility — and names whichever one failed.

apex doctor

That is the whole setup — everything below now works. If apex stops being found after working once, check the file is still on disk: some antivirus products quarantine or rename freshly downloaded executables.

Everyday commands

apex appointment list
apex campaign list
apex campaign send ID
apex workflow run ID
apex workflow logs EXEC_ID --follow
apex usage --since 30d

Add --json to any command for machine-readable output, and every command exits non-zero on failure — so it drops straight into a shell script or a CI job.

Example

apex campaign list --json | jq -r '.[] | .name'

Finding the command you need

There are 132 commands across 13 categories — everything the dashboard can do, the CLI can do. You are not expected to memorise them. Three ways to find one:

apex commands              # every command, grouped
apex commands budget       # search by word
apex commands --category billing
apex COMMAND --help        # flags and arguments for one command

Search is built into apex commands rather than left to a pipe, because Windows cmd.exe has no grep.

Commands follow one shape, so there is nothing per-command to learn: list and show read, create, update and delete write, arguments are CAPS, JSON bodies go in with --file, filters are flags.

Every command

Account & access

  • apex loginSign in through the browser
  • apex logoutSign out, delete stored credentials
  • apex whoamiWho am I, which workspace
  • apex me showYour account
  • apex me permissionsWhat you are allowed to do
  • apex me update --file p.jsonChange display name or photo
  • apex auth sessionsActive CLI sessions
  • apex auth revoke SESSION_IDEnd a session remotely
  • apex context listConfigured environments
  • apex context use NAMESwitch environment
  • apex context showCurrent environment

Calls & telephony

  • apex calls listList calls
  • apex calls show CALL_SIDOne call, with transcript
  • apex calls dial --file c.jsonPlace an outbound AI call
  • apex calls reportDialled vs connected

Campaigns & contacts

  • apex campaign listList campaigns
  • apex campaign create --file c.jsonCreate a campaign
  • apex campaign send IDStart sending
  • apex campaign update ID --file c.jsonUpdate a campaign
  • apex campaign delete IDDelete a campaign
  • apex campaign calls IDCalls a campaign placed
  • apex contacts listSaved contacts
  • apex contacts import --file c.jsonImport contacts

WhatsApp

  • apex whatsapp chatsConversations
  • apex whatsapp messages --conversation_id IDMessages in a chat

Appointments & staff

  • apex appointment listList appointments
  • apex appointment create --file a.jsonBook one
  • apex appointment update ID --file a.jsonChange one
  • apex appointment status ID --file s.jsonSet status
  • apex appointment cancel IDCancel one
  • apex doctors listDoctors and staff
  • apex doctors add --file d.jsonAdd someone
  • apex doctors toggle IDActive / inactive
  • apex doctors remove IDRemove someone

AI agent & voice

  • apex agent showAgent settings
  • apex agent set --file s.jsonUpdate settings
  • apex agent voice --file v.jsonSet the voice
  • apex agent mode --file m.jsonReceptionist or booking mode
  • apex agent prompt --file b.jsonWrite greeting + instructions with AI
  • apex agent warm --file t.jsonPre-warm for a fast first call
  • apex agent listConfigured agents
  • apex provider showSpeech and model providers
  • apex provider set --file p.jsonChange providers

Workflows

  • apex workflow listList workflows
  • apex workflow deploy --file w.jsonCreate, optionally publish
  • apex workflow run IDTrigger a run
  • apex workflow test ID --file t.jsonTest without publishing
  • apex workflow runsList executions
  • apex workflow logs EXEC_ID --followLive execution logs
  • apex workflow delete IDDelete a workflow

Billing & usage

  • apex billing showMonth-to-date usage and cost
  • apex billing plansPlans and per-call rates
  • apex billing plan-set --file p.jsonChoose a plan
  • apex billing trialTrial or quota status
  • apex billing paymentPayment status
  • apex billing recharge --file r.jsonRequest a recharge
  • apex billing costToday's accrued cost
  • apex usage --since 30dUsage for this workspace

Workspaces & team

  • apex tenant listWorkspaces you can access
  • apex tenant use NAMEPin the active workspace
  • apex tenant show TENANT_IDOne workspace
  • apex tenant create --file t.jsonCreate one
  • apex tenant update TENANT_ID --file t.jsonUpdate one
  • apex tenant features TENANT_ID --file f.jsonFeatures on/off
  • apex tenant services TENANT_ID --file s.jsonServices offered
  • apex tenant activeActive workspace
  • apex tenant usageUsage for this workspace
  • apex tenant onboard --file b.jsonOnboard a business
  • apex org membersTeam members
  • apex org rolesRoles
  • apex org slosService levels

API & webhooks

  • apex key listAPI keys
  • apex endpoint listYour custom endpoints
  • apex endpoint delete SLUGDelete an endpoint
  • apex endpoint docsGenerated docs
  • apex endpoint presetsEndpoint presets
  • apex endpoint usageAPI usage
  • apex webhook listWebhooks
  • apex webhook add --file w.jsonAdd a webhook
  • apex webhook test IDSend a test event
  • apex webhook delete IDDelete a webhook

Administration

  • apex admin users listPlatform users
  • apex admin users create --file u.jsonCreate a user
  • apex admin users activate --file u.jsonActivate
  • apex admin users deactivate --file u.jsonDeactivate
  • apex admin users role --file r.jsonSet a role
  • apex admin users assign --file a.jsonAssign to a workspace
  • apex admin tenants delete TENANT_IDDelete a workspace
  • apex admin budget listBudgets
  • apex admin budget show TENANT_IDOne budget
  • apex admin budget set TENANT_ID --file b.jsonSet a budget
  • apex admin did listPhone number pool
  • apex admin did allocate --file d.jsonAllocate a number
  • apex admin did free --file d.jsonRelease a number
  • apex admin trunk listSIP trunks
  • apex admin trunk add --file t.jsonAdd a trunk
  • apex admin trunk delete IDDelete a trunk
  • apex admin keys listProvider engine keys
  • apex admin keys set --file k.jsonSet a provider key
  • apex admin limits listRate-limit rules
  • apex admin limits add --file l.jsonAdd a rule
  • apex admin limits delete IDDelete a rule
  • apex admin brand listWhite-label brands
  • apex admin brand show IDOne brand
  • apex admin brand update ID --file b.jsonUpdate a brand
  • apex admin brand delete IDDelete a brand
  • apex admin auditAudit log
  • apex admin capacityPlatform capacity
  • apex admin signupsRecent signups
  • apex admin loginsRecent logins
  • apex admin paymentsPayments
  • apex admin configSystem configuration
  • apex admin providersDefault providers
  • apex admin queue listDead-lettered jobs
  • apex admin blacklist --file n.jsonBlacklist a number
  • apex admin retention --file r.jsonRun retention sweep
  • apex admin isolationIsolation snapshot

Data & exports

  • apex export calls --range monthExport call history as CSV
  • apex export status EXPORT_IDCheck an export
  • apex logs requestsRecent API request logs
  • apex privacy recordRecord of processing activities
  • apex privacy erase --file r.jsonRaise an erasure request

System

  • apex statusIs the platform up
  • apex readyReady to serve
  • apex summaryOne-page summary
  • apex configPublic configuration
  • apex doctorDiagnose config, auth, connectivity
  • apex events streamLive platform events
  • apex commandsList or search every command
  • apex versionShow version
  • apex upgradeCheck for a newer release
  • apex completion powershellShell completion

Windows: Command Prompt and PowerShell

Both native shells work. The difference is quoting and what you do with JSON — the examples elsewhere on this page assume a POSIX shell with jq.

Command Prompt (cmd.exe)

apex calls list --json > calls.json
apex campaign send abc123
type appt.json | apex appointment create --file -

Single quotes are literal characters in cmd — use double quotes around any value containing spaces. There is no jq; redirect to a file.

PowerShell

apex calls list --json | ConvertFrom-Json
apex billing show --json | ConvertFrom-Json | Format-List
Get-Content appt.json | apex appointment create --file -
apex completion powershell | Out-String | Invoke-Expression

ConvertFrom-Json does the job jq does elsewhere, and the last line turns on tab completion.

Live events

Subscribe to what's happening right now — calls connecting and completing, appointments booked, campaign progress. The stream reconnects on its own and resumes where it left off, so a dropped connection never costs you events.

apex events stream
apex events stream --json | jq -r 'select(.type == "call.completed") | .data.phone'

Sessions you control

Every signed-in terminal is a session you can see and end at any time — useful when a laptop is lost or a contractor rolls off. Credentials are short-lived and refresh silently in the background.

apex auth sessions
apex auth revoke SESSION_ID

Ready to build?

Install the CLI in one command, sign in to create your first API key, or talk to us about a custom integration.