8 operations. Call each with POST https://app.chirply.io/api/v1/actions/<name> and a bearer token; the response is { "data": { "action", "summary", "result" } }. A read badge means the operation changes nothing; write requires the credential’s write scope.
Assign a desk phone to a seat
devices.assignwriteadmin only
Assign a desk phone to an account member (seat), or clear the assignment by passing null. This records who the phone belongs to; it does not change which numbers ring it.
Parameters
Field
Type
Required
Description
id
string (uuid)
required
The device id.
user_id
string (uuid) (or null)
required
The member id to assign the phone to, or null to unassign it.
Over MCP the same operation is the tool devices_assign at https://app.chirply.io/api/mcp, same bearer token, same input.
List desk phones
devices.listreadadmin only
List the physical VoIP/SIP desk phones registered to this account — each with its label, SIP username, assigned seat, enabled state, assigned phone-number ids, and exact *1 through *9 outbound caller-ID codes — plus the SIP server address. Read-only, costs nothing, and NEVER returns SIP passwords.
Over MCP the same operation is the tool devices_list at https://app.chirply.io/api/mcp, same bearer token, same input.
Add a desk phone
devices.provisionwriteadmin only
Provision a new physical VoIP/SIP desk phone on its OWN Twilio account and return the SIP server, username, and password to enter into the handset. The password is shown ONCE and can never be retrieved again (only regenerated). The account's SIP domain is created automatically on the first device. This spends no money by itself; once registered, the phone rings the account's numbers and can dial out, billed as ordinary Twilio calls.
Parameters
Field
Type
Required
Description
label
string
required
A name for the phone, e.g. 'Front desk Yealink'.
user_id
string (uuid) (or null)
optional
The member (seat) this phone belongs to. Omit to leave it unassigned.
Over MCP the same operation is the tool devices_provision at https://app.chirply.io/api/mcp, same bearer token, same input.
Reset a desk phone's password
devices.regenerate_passwordwriteadmin only
Generate a new SIP password for a desk phone and return it ONCE, along with the SIP server and username. The old password stops working immediately, so the handset must be updated with the new one to keep working. Use if a password may have leaked or was lost (it can't be read back any other way).
Over MCP the same operation is the tool devices_regenerate_password at https://app.chirply.io/api/mcp, same bearer token, same input.
Remove a desk phone
devices.removewriteconfirmadmin only
PERMANENTLY remove a desk phone: its SIP credential is deleted on Twilio, so the handset can no longer register, ring, or dial. This CANNOT be undone — setting the phone up again means provisioning a fresh device with new credentials.
Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.
Over MCP the same operation is the tool devices_set_enabled at https://app.chirply.io/api/mcp, same bearer token, same input.
Save phone numbers
devices.set_numberswriteadmin only
Set exactly which account phone numbers belong to a desk phone. These numbers ring the phone on inbound team calls and become its allowed outbound caller IDs; on the handset, dialing normally uses the available account default and prefixes *1 through *9 select a listed number for one call. Pass an empty list to use EVERY team-routed number. Inbound routing still does not override numbers sent to an AI receptionist, IVR, blind forward, or conference.
Parameters
Field
Type
Required
Description
id
string (uuid)
required
The device id.
number_ids
array of (string (uuid))
required
The phone_numbers ids this phone should ring for and may present as outbound caller ID; empty = all team numbers.
Over MCP the same operation is the tool devices_set_numbers at https://app.chirply.io/api/mcp, same bearer token, same input.
Save keypad order
devices.set_outbound_orderwriteadmin only
Choose the per-phone order behind the *1 through *9 outbound caller-ID shortcuts. This changes which owned business number a future desk-phone call presents when its prefix is dialed; it does not place a call, send a message, change inbound ringing, or spend money by itself. Active assigned numbers omitted from the list are appended after the listed numbers.
Parameters
Field
Type
Required
Description
id
string (uuid)
required
The desk-phone device id whose keypad order should change.
number_ids
array of (string (uuid))
required
Active phone_numbers ids in the desired order: the first becomes *1, the second *2, through *9. Each id must be available to this phone and may appear only once.