# Dialpad

> Dialpad cloud phone - send SMS, place calls, manage users, contacts, call centers, transcripts and webhooks.

Lets an agent drive your Dialpad business phone system - send SMS/MMS, place and
control calls, read AI transcripts and recaps, manage users, contacts, offices,
departments and call centers, run analytics exports, and wire up webhooks.

## What it can do

| Method | What it does |
| --- | --- |
| `dialpad_send_sms` | Send an SMS/MMS to up to 10 recipients. |
| `dialpad_list_calls` | List calls with time/target filters. |
| `dialpad_get_call` | Get one call and its metadata. |
| `dialpad_initiate_call` | Place an outbound call on a user's behalf. |
| `dialpad_transfer_call` | Transfer an active call to a number or target. |
| `dialpad_hangup_call` | Hang up an active call. |
| `dialpad_get_transcript` | Get a call's transcript. |
| `dialpad_get_ai_recap` | Get a call's AI recap (summary, action items). |
| `dialpad_list_users` | List users; filter by email or state. |
| `dialpad_get_user` | Get one user. |
| `dialpad_create_user` | Provision a new user in an office. |
| `dialpad_update_user` | Update a user's name, license, or state. |
| `dialpad_delete_user` | Delete a user. |
| `dialpad_assign_user_number` | Assign a phone number to a user. |
| `dialpad_list_contacts` | List shared or user-local contacts. |
| `dialpad_get_contact` | Get one contact. |
| `dialpad_create_contact` | Create a contact. |
| `dialpad_update_contact` | Update a contact. |
| `dialpad_delete_contact` | Delete a contact. |
| `dialpad_list_offices` | List offices. |
| `dialpad_get_office` | Get one office. |
| `dialpad_list_departments` | List departments. |
| `dialpad_get_department` | Get one department. |
| `dialpad_list_department_operators` | List a department's operators. |
| `dialpad_list_call_centers` | List call centers. |
| `dialpad_get_call_center` | Get one call center. |
| `dialpad_list_call_center_operators` | List a call center's operators. |
| `dialpad_add_call_center_operator` | Add an operator to a call center queue. |
| `dialpad_remove_call_center_operator` | Remove an operator from a call center. |
| `dialpad_create_stats` | Start an analytics export (returns a request_id). |
| `dialpad_get_stats` | Poll an analytics export result. |
| `dialpad_list_webhooks` | List webhooks. |
| `dialpad_get_webhook` | Get one webhook. |
| `dialpad_create_webhook` | Create a webhook endpoint. |
| `dialpad_delete_webhook` | Delete a webhook. |
| `dialpad_list_call_subscriptions` | List call event subscriptions. |
| `dialpad_create_call_subscription` | Subscribe a webhook to call events. |
| `dialpad_delete_call_subscription` | Delete a call event subscription. |
| `dialpad_list_sms_subscriptions` | List SMS event subscriptions. |
| `dialpad_create_sms_subscription` | Subscribe a webhook to SMS events. |
| `dialpad_delete_sms_subscription` | Delete an SMS event subscription. |
| `dialpad_list_numbers` | List the company's phone numbers (filter by status). |
| `dialpad_get_number` | Get one phone number's details. |
| `dialpad_assign_number` | Assign a number to any target (auto or specific). |
| `dialpad_assign_specific_number` | Assign a specific number to a target. |
| `dialpad_unassign_number` | Un-assign a number from its target. |
| `dialpad_format_number` | Reformat a number between local and E.164. |
| `dialpad_list_office_operators` | List an office mainline's operators. |
| `dialpad_add_office_operator` | Add an operator to an office mainline. |
| `dialpad_remove_office_operator` | Remove an operator from an office mainline. |
| `dialpad_create_department` | Create a department. |
| `dialpad_update_department` | Update a department. |
| `dialpad_delete_department` | Delete a department. |
| `dialpad_add_department_operator` | Add an operator to a department. |
| `dialpad_remove_department_operator` | Remove an operator from a department. |
| `dialpad_create_call_center` | Create a call center. |
| `dialpad_update_call_center` | Update a call center. |
| `dialpad_delete_call_center` | Delete a call center. |
| `dialpad_get_transcript_url` | Get a downloadable transcript URL for a call. |
| `dialpad_list_contact_subscriptions` | List contact event subscriptions. |
| `dialpad_create_contact_subscription` | Subscribe a webhook to contact events. |
| `dialpad_delete_contact_subscription` | Delete a contact event subscription. |
| `dialpad_list_agent_status_subscriptions` | List agent status event subscriptions. |
| `dialpad_create_agent_status_subscription` | Subscribe a webhook to agent status events. |
| `dialpad_delete_agent_status_subscription` | Delete an agent status event subscription. |
| `dialpad_list_change_log_subscriptions` | List change log event subscriptions. |
| `dialpad_create_change_log_subscription` | Subscribe a webhook to change log events. |
| `dialpad_delete_change_log_subscription` | Delete a change log event subscription. |
| `dialpad_toggle_dnd` | Toggle a user's Do Not Disturb. |
| `dialpad_update_user_status` | Update a user's status message and expiration. |
| `dialpad_list_user_devices` | List a user's devices. |
| `dialpad_get_user_device` | Get one of a user's devices. |
| `dialpad_list_user_deskphones` | List a user's desk phones. |
| `dialpad_get_user_e911` | Get a user's E911 emergency address. |
| `dialpad_list_user_caller_ids` | List a user's available and active caller IDs. |
| `dialpad_screen_pop` | Trigger a screen pop on a user's device. |
| `dialpad_list_all` | Auto-paginate any cursor-paginated list endpoint. |

## How to get credentials

A Company (or Office) Admin creates the API key:

1. Open [dialpad.com/developers](https://dialpad.com/developers) for the
   developer portal and current instructions.
2. In Dialpad, go to **Admin Settings** -> **Company** (or **Office**) ->
   **Authentication** -> **API keys**.
3. **Add a key**, name it (e.g. *FlyMyAI Agent*), and copy the token.
4. The key authenticates as the whole company - keep it secret and revoke it
   from the same screen if it leaks.

## Fields to fill in FlyMyAI

| FlyMyAI field | Where it comes from |
| --- | --- |
| `DIALPAD_API_KEY` | Admin Settings -> Company/Office -> Authentication -> API keys |
