Command-Line for Fonoster
Use this tool to manage your Fonoster resources from the command line. With this tool, you can create, update, and delete resources like Applications, Numbers, SIP Agents, and more.
When connecting to your own instance of Fonoster, remember to use your endpoint when login in. Also, remember to use the
--insecure
flag when connecting to a server with no TLS.
$ npm install -g @fonoster/ctl
$ fonoster COMMAND
running command...
$ fonoster (--version)
@fonoster/ctl/0.13.9 darwin-arm64 node-v22.14.0
$ fonoster --help [COMMAND]
USAGE
$ fonoster COMMAND
...
fonoster apikeys:create
fonoster apikeys:delete REF
fonoster apikeys:list
fonoster apikeys:regenerate REF
fonoster applications:create
fonoster applications:delete REF
fonoster applications:eval
fonoster applications:get REF
fonoster applications:list
fonoster applications:update REF
fonoster bug
fonoster feedback
fonoster mcp:configure
fonoster secrets:create
fonoster secrets:delete REF
fonoster secrets:get REF
fonoster secrets:list
fonoster secrets:update REF
fonoster sipnet:acls:create
fonoster sipnet:acls:delete REF
fonoster sipnet:acls:get REF
fonoster sipnet:acls:list
fonoster sipnet:acls:update REF
fonoster sipnet:agents:create
fonoster sipnet:agents:delete REF
fonoster sipnet:agents:get REF
fonoster sipnet:agents:list
fonoster sipnet:agents:update REF
fonoster sipnet:calls:create
fonoster sipnet:calls:get REF
fonoster sipnet:calls:list
fonoster sipnet:credentials:create
fonoster sipnet:credentials:delete REF
fonoster sipnet:credentials:get REF
fonoster sipnet:credentials:list
fonoster sipnet:credentials:update REF
fonoster sipnet:domains:create
fonoster sipnet:domains:delete REF
fonoster sipnet:domains:get REF
fonoster sipnet:domains:list
fonoster sipnet:domains:update REF
fonoster sipnet:numbers:create
fonoster sipnet:numbers:delete REF
fonoster sipnet:numbers:get REF
fonoster sipnet:numbers:linkTwilioNumber
fonoster sipnet:numbers:list
fonoster sipnet:numbers:update REF
fonoster sipnet:trunks:create
fonoster sipnet:trunks:delete REF
fonoster sipnet:trunks:get REF
fonoster sipnet:trunks:list
fonoster sipnet:trunks:update REF
fonoster workspaces:active
fonoster workspaces:list
fonoster workspaces:login
fonoster workspaces:logout REF
fonoster workspaces:use REF
create an API key for the active Workspace
USAGE
$ fonoster apikeys:create [-i] [-e <value>] [-r <value>]
FLAGS
-e, --expiration=<value> API Key expiration time in days(e.g. 10d) or months(e.g. 10m)
-i, --insecure allow connections to a server with no TLS
-r, --role=<value> [default: WORKSPACE_ADMIN] API Key role
DESCRIPTION
create an API key for the active Workspace
EXAMPLES
$ fonoster apikeys:create
See code: dist/commands/apikeys/create.js
delete an API key from the active Workspace
USAGE
$ fonoster apikeys:delete REF [-i]
ARGUMENTS
REF the ApiKey to delete from the Workspace
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete an API key from the active Workspace
EXAMPLES
$ fonoster apikeys:delete
See code: dist/commands/apikeys/delete.js
display all API keys in the active Workspace
USAGE
$ fonoster apikeys:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all API keys in the active Workspace
EXAMPLES
$ fonoster apikeys:list
See code: dist/commands/apikeys/list.js
generate a new access key secret for an API key
USAGE
$ fonoster apikeys:regenerate REF [-i]
ARGUMENTS
REF the Application to update
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
generate a new access key secret for an API key
EXAMPLES
$ fonoster apikeys:regenerate
See code: dist/commands/apikeys/regenerate.js
add a new Application to the active Workspace
USAGE
$ fonoster applications:create [-i] [-f <value>]
FLAGS
-f, --from-file=<value> create Application from YAML or JSON file
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new Application to the active Workspace
EXAMPLES
$ fonoster applications:create
See code: dist/commands/applications/create.js
delete an Application from the active Workspace
USAGE
$ fonoster applications:delete REF [-i]
ARGUMENTS
REF the Application to delete
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete an Application from the active Workspace
EXAMPLES
$ fonoster applications:delete
See code: dist/commands/applications/delete.js
experimental command to test an Autopilot application
USAGE
$ fonoster applications:eval -f <value> [-i]
FLAGS
-f, --file=<value> (required) path to test cases file (json, yaml, or yml)
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
experimental command to test an Autopilot application
EXAMPLES
$ fonoster applications:eval -f assistant.json
$ fonoster applications:eval -f assistant.yaml
See code: dist/commands/applications/eval.js
retrieve details of an Application by reference
USAGE
$ fonoster applications:get REF [-i]
ARGUMENTS
REF The Application to show details about
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of an Application by reference
EXAMPLES
$ fonoster applications:get
See code: dist/commands/applications/get.js
display all Applications in the active Workspace
USAGE
$ fonoster applications:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all Applications in the active Workspace
EXAMPLES
$ fonoster applications:list
See code: dist/commands/applications/list.js
modify the configuration of an Application
USAGE
$ fonoster applications:update REF [-i] [-f <value>]
ARGUMENTS
REF the Application to update
FLAGS
-f, --from-file=<value> update Application from YAML or JSON file
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
modify the configuration of an Application
EXAMPLES
$ fonoster applications:update
See code: dist/commands/applications/update.js
report a bug to the development team 🐞
USAGE
$ fonoster bug
DESCRIPTION
report a bug to the development team 🐞
EXAMPLES
$ fonoster bug
See code: dist/commands/bug.js
provide feedback on your experience
USAGE
$ fonoster feedback
DESCRIPTION
provide feedback on your experience
...
Help us improve by providing some feedback
EXAMPLES
$ fonoster feedback
See code: dist/commands/feedback.js
configure MCP client settings
USAGE
$ fonoster mcp:configure [-c claude] [-w <value>]
FLAGS
-c, --client=<option> [default: claude] MCP client to configure
<options: claude>
-w, --workspace=<value> workspace reference
DESCRIPTION
configure MCP client settings
EXAMPLES
$ fonoster mcp:configure --client claude
$ fonoster mcp:configure --client claude --workspace my-workspace
See code: dist/commands/mcp/configure.js
add a new Secret to the active Workspace
USAGE
$ fonoster secrets:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new Secret to the active Workspace
EXAMPLES
$ fonoster secrets:create
See code: dist/commands/secrets/create.js
delete a Secret from the active Workspace
USAGE
$ fonoster secrets:delete REF [-i]
ARGUMENTS
REF the Secret reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete a Secret from the active Workspace
EXAMPLES
$ fonoster secrets:delete
See code: dist/commands/secrets/delete.js
retrieve details of a Secret by reference
USAGE
$ fonoster secrets:get REF [-i]
ARGUMENTS
REF The Secret to show details about
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of a Secret by reference
EXAMPLES
$ fonoster secrets:get
See code: dist/commands/secrets/get.js
display all Secrets in the active Workspace
USAGE
$ fonoster secrets:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all Secrets in the active Workspace
EXAMPLES
$ fonoster secrets:list
See code: dist/commands/secrets/list.js
modify the value or metadata of a Secret
USAGE
$ fonoster secrets:update REF [-i]
ARGUMENTS
REF the Secret to update
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
modify the value or metadata of a Secret
EXAMPLES
$ fonoster secrets:update
See code: dist/commands/secrets/update.js
create a new Access Control List (ACL)
USAGE
$ fonoster sipnet:acls:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
create a new Access Control List (ACL)
EXAMPLES
$ fonoster sipnet:acls:create
See code: dist/commands/sipnet/acls/create.js
remove an Access Control List (ACL) from the Workspace
USAGE
$ fonoster sipnet:acls:delete REF [-i]
ARGUMENTS
REF the ACL reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
remove an Access Control List (ACL) from the Workspace
EXAMPLES
$ fonoster sipnet:acls:delete
See code: dist/commands/sipnet/acls/delete.js
get a specific Access Control List (ACL)
USAGE
$ fonoster sipnet:acls:get REF [-i]
ARGUMENTS
REF The ACL reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
get a specific Access Control List (ACL)
EXAMPLES
$ fonoster sipnet:acls:get
See code: dist/commands/sipnet/acls/get.js
list all Access Control Lists (ACLs)
USAGE
$ fonoster sipnet:acls:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
list all Access Control Lists (ACLs)
EXAMPLES
$ fonoster sipnet:acls:list
See code: dist/commands/sipnet/acls/list.js
update an existing Access Control List (ACL)
USAGE
$ fonoster sipnet:acls:update REF [-i]
ARGUMENTS
REF the ACL reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
update an existing Access Control List (ACL)
EXAMPLES
$ fonoster sipnet:acls:update
See code: dist/commands/sipnet/acls/update.js
add a new SIP Agent to the network
USAGE
$ fonoster sipnet:agents:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new SIP Agent to the network
EXAMPLES
$ fonoster sipnet:agents:create
See code: dist/commands/sipnet/agents/create.js
delete a SIP Agent from the network
USAGE
$ fonoster sipnet:agents:delete REF [-i]
ARGUMENTS
REF the Agent reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete a SIP Agent from the network
EXAMPLES
$ fonoster sipnet:agents:delete
See code: dist/commands/sipnet/agents/delete.js
retrieve details of a SIP Agent
USAGE
$ fonoster sipnet:agents:get REF [-i]
ARGUMENTS
REF The Agent reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of a SIP Agent
EXAMPLES
$ fonoster sipnet:agents:get
See code: dist/commands/sipnet/agents/get.js
display all SIP Agents in the network
USAGE
$ fonoster sipnet:agents:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all SIP Agents in the network
EXAMPLES
$ fonoster sipnet:agents:list
See code: dist/commands/sipnet/agents/list.js
add a new SIP Agent to the network
USAGE
$ fonoster sipnet:agents:update REF [-i]
ARGUMENTS
REF the ACL reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new SIP Agent to the network
EXAMPLES
$ fonoster sipnet:agents:update
See code: dist/commands/sipnet/agents/update.js
initiate a call to a phone number or SIP URI
USAGE
$ fonoster sipnet:calls:create -f <value> -t <value> -a <value> [-i] [-o <value>] [-c] [-m <value>]
FLAGS
-a, --app-ref=<value> (required) the reference to the application to use
-c, --track-call track the call
-f, --from=<value> (required) the number to make the call from
-i, --insecure allow connections to a server with no TLS
-m, --metadata=<value> a JSON object with metadata for the voice application (e.g. '{"name": "John Doe"}')
-o, --timeout=<value> [default: 30] the call timeout
-t, --to=<value> (required) the number to make the call to
DESCRIPTION
initiate a call to a phone number or SIP URI
EXAMPLES
$ fonoster sipnet:calls:create
See code: dist/commands/sipnet/calls/create.js
get a specific Access Control List (ACL)
USAGE
$ fonoster sipnet:calls:get REF [-i]
ARGUMENTS
REF The ACL reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
get a specific Access Control List (ACL)
EXAMPLES
$ fonoster sipnet:calls:get
See code: dist/commands/sipnet/calls/get.js
display all calls made in the active Workspace
USAGE
$ fonoster sipnet:calls:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all calls made in the active Workspace
EXAMPLES
$ fonoster sipnet:calls:list
See code: dist/commands/sipnet/calls/list.js
add a new set of Credentials to the network
USAGE
$ fonoster sipnet:credentials:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new set of Credentials to the network
EXAMPLES
$ fonoster sipnet:credentials:create
See code: dist/commands/sipnet/credentials/create.js
delete a set of Credentials from the active Workspace
USAGE
$ fonoster sipnet:credentials:delete REF [-i]
ARGUMENTS
REF the Credentials reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete a set of Credentials from the active Workspace
EXAMPLES
$ fonoster sipnet:credentials:delete
See code: dist/commands/sipnet/credentials/delete.js
retrieve details of a set of Credentials by reference
USAGE
$ fonoster sipnet:credentials:get REF [-i]
ARGUMENTS
REF The Credentials reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of a set of Credentials by reference
EXAMPLES
$ fonoster sipnet:credentials:get
See code: dist/commands/sipnet/credentials/get.js
display all Credentials in the active Workspace
USAGE
$ fonoster sipnet:credentials:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all Credentials in the active Workspace
EXAMPLES
$ fonoster sipnet:credentials:list
See code: dist/commands/sipnet/credentials/list.js
modify the values or metadata of a set of Credentials
USAGE
$ fonoster sipnet:credentials:update REF [-i]
ARGUMENTS
REF the Credentials reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
modify the values or metadata of a set of Credentials
EXAMPLES
$ fonoster sipnet:credentials:update
See code: dist/commands/sipnet/credentials/update.js
add a new Domain to the SIP network
USAGE
$ fonoster sipnet:domains:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new Domain to the SIP network
EXAMPLES
$ fonoster sipnet:domains:create
See code: dist/commands/sipnet/domains/create.js
delete a Domain from the active Workspace
USAGE
$ fonoster sipnet:domains:delete REF [-i]
ARGUMENTS
REF the Domain reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete a Domain from the active Workspace
EXAMPLES
$ fonoster sipnet:domains:delete
See code: dist/commands/sipnet/domains/delete.js
retrieve details of a Domain by reference
USAGE
$ fonoster sipnet:domains:get REF [-i]
ARGUMENTS
REF The Domain reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of a Domain by reference
EXAMPLES
$ fonoster sipnet:domains:get
See code: dist/commands/sipnet/domains/get.js
display all Domains in the SIP network
USAGE
$ fonoster sipnet:domains:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all Domains in the SIP network
EXAMPLES
$ fonoster sipnet:domains:list
See code: dist/commands/sipnet/domains/list.js
modify the configuration of a Domain
USAGE
$ fonoster sipnet:domains:update REF [-i]
ARGUMENTS
REF the Domain reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
modify the configuration of a Domain
EXAMPLES
$ fonoster sipnet:domains:update
See code: dist/commands/sipnet/domains/update.js
add a new Number to the SIP network
USAGE
$ fonoster sipnet:numbers:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new Number to the SIP network
EXAMPLES
$ fonoster sipnet:numbers:create
See code: dist/commands/sipnet/numbers/create.js
delete a Number from the active Workspace
USAGE
$ fonoster sipnet:numbers:delete REF [-i]
ARGUMENTS
REF the Numbers's reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
delete a Number from the active Workspace
EXAMPLES
$ fonoster sipnet:numbers:delete
See code: dist/commands/sipnet/numbers/delete.js
retrieve details of a Number by reference
USAGE
$ fonoster sipnet:numbers:get REF [-i]
ARGUMENTS
REF the Number to show details about
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of a Number by reference
EXAMPLES
$ fonoster sipnet:numbers:get
See code: dist/commands/sipnet/numbers/get.js
associate a Twilio number with a Fonoster Application
USAGE
$ fonoster sipnet:numbers:linkTwilioNumber [-i] [-b <value>] [-a <value>]
FLAGS
-a, --access-control-list=<value> [default: 165.22.7.155/32] the access control list to allow (use if running your
Fonoster instance)
-b, --outbound-uri-base=<value> [default: pstn.fonoster.com] the uri to point twilio to for outbound calls (use if
running your Fonoster instance)
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
associate a Twilio number with a Fonoster Application
EXAMPLES
$ fonoster sipnet:numbers:linkTwilioNumber
See code: dist/commands/sipnet/numbers/linkTwilioNumber.js
display all Numbers in the active Workspace
USAGE
$ fonoster sipnet:numbers:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to return
DESCRIPTION
display all Numbers in the active Workspace
EXAMPLES
$ fonoster sipnet:numbers:list
See code: dist/commands/sipnet/numbers/list.js
modify the configuration of a Number
USAGE
$ fonoster sipnet:numbers:update REF [-i]
ARGUMENTS
REF the Number to update
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
modify the configuration of a Number
EXAMPLES
$ fonoster sipnet:numbers:update
See code: dist/commands/sipnet/numbers/update.js
add a new Trunk to the SIP network
USAGE
$ fonoster sipnet:trunks:create [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
add a new Trunk to the SIP network
EXAMPLES
$ fonoster sipnet:trunks:create
See code: dist/commands/sipnet/trunks/create.js
remove a Trunk from the active Workspace
USAGE
$ fonoster sipnet:trunks:delete REF [-i]
ARGUMENTS
REF the Trunk's reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
remove a Trunk from the active Workspace
EXAMPLES
$ fonoster sipnet:trunks:delete
See code: dist/commands/sipnet/trunks/delete.js
retrieve details of a Trunk by reference
USAGE
$ fonoster sipnet:trunks:get REF [-i]
ARGUMENTS
REF The Trunk's reference
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
retrieve details of a Trunk by reference
EXAMPLES
$ fonoster sipnet:trunks:get
See code: dist/commands/sipnet/trunks/get.js
display all Trunks in the active Workspace
USAGE
$ fonoster sipnet:trunks:list [-i] [-s <value>]
FLAGS
-i, --insecure allow connections to a server with no TLS
-s, --page-size=<value> [default: 1000] the number of items to show
DESCRIPTION
display all Trunks in the active Workspace
EXAMPLES
$ fonoster sipnet:trunks:list
See code: dist/commands/sipnet/trunks/list.js
modify the configuration of a Trunk
USAGE
$ fonoster sipnet:trunks:update REF [-i]
ARGUMENTS
REF the Trunk to update
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
modify the configuration of a Trunk
EXAMPLES
$ fonoster sipnet:trunks:update
See code: dist/commands/sipnet/trunks/update.js
display the name of the active Workspace
USAGE
$ fonoster workspaces:active
DESCRIPTION
display the name of the active Workspace
EXAMPLES
$ fonoster workspaces:active
See code: dist/commands/workspaces/active.js
display all linked Workspaces
USAGE
$ fonoster workspaces:list
DESCRIPTION
display all linked Workspaces
EXAMPLES
$ fonoster workspaces:list
See code: dist/commands/workspaces/list.js
link a Workspace to the local environment
USAGE
$ fonoster workspaces:login [-i]
FLAGS
-i, --insecure allow connections to a server with no TLS
DESCRIPTION
link a Workspace to the local environment
EXAMPLES
$ fonoster workspaces:login
See code: dist/commands/workspaces/login.js
unlink a Workspace from the local environment
USAGE
$ fonoster workspaces:logout REF
ARGUMENTS
REF the Workspace to unlink from
DESCRIPTION
unlink a Workspace from the local environment
EXAMPLES
$ fonoster workspaces:logout
See code: dist/commands/workspaces/logout.js
set a Workspace as the default
USAGE
$ fonoster workspaces:use REF
ARGUMENTS
REF The Workspace to unlink from
DESCRIPTION
set a Workspace as the default
EXAMPLES
$ fonoster workspaces:use
See code: dist/commands/workspaces/use.js