Zoom Phone
56 tools • OpenAPI spec ↗
GETlist_zoom_phone_account_settings/settingsList an account's Zoom Phone settings
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| setting_types | string | No | The comma separated list of the setting items you want to fetch. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_zoom_phone_account_settings"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_zoom_phone_account_settings",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/settings Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_live_transcription": null,
"local_survivability_mode": {
"enable": false,
"locked": false,
"locked_by": null
},
"external_calling_on_zoom_room_common_area": {
"enable": false,
"locked": false,
"locked_by": null
},
"select_outbound_caller_id": null,
"personal_audio_library": null,
"voicemail": null,
"voicemail_transcription": {
"enable": false,
"locked": false,
"locked_by": null
},
"voicemail_notification_by_email": null,
"shared_voicemail_notification_by_email": {
"enable": false,
"locked": false,
"locked_by": null
},
"restricted_call_hours": null,
"allowed_call_locations": null,
"check_voicemails_over_phone": {
"enable": false,
"locked": false,
"locked_by": null
},
"auto_call_recording": null,
"ad_hoc_call_recording": null,
"international_calling": {
"enable": false,
"locked": false,
"locked_by": null
},
"outbound_calling": {
"enable": false,
"locked": false,
"locked_by": null
},
"outbound_sms": {
"enable": false,
"locked": false,
"locked_by": null
},
"sms": null,
"sms_etiquette_tool": null,
"zoom_phone_on_mobile": null,
"zoom_phone_on_pwa": {
"enable": false,
"locked": false,
"locked_by": null
},
"e2e_encryption": {
"enable": false,
"locked": false,
"locked_by": null
},
"call_handling_forwarding_to_other_users": null,
"call_overflow": null,
"call_transferring": null,
"elevate_to_meeting": {
"enable": false,
"locked": false,
"locked_by": null
},
"call_park": null,
"hand_off_to_room": {
"enable": false,
"locked": false,
"locked_by": null
},
"mobile_switch_to_carrier": {
"enable": false,
"locked": false,
"locked_by": null
},
"delegation": {
"enable": false,
"locked": false,
"locked_by": null
},
"audio_intercom": {
"enable": false,
"locked": false,
"locked_by": null
},
"block_calls_without_caller_id": {
"enable": false,
"locked": false,
"locked_by": null
},
"block_external_calls": null,
"call_queue_opt_out_reason": null,
"auto_delete_data_after_retention_duration": {
"enable": false,
"locked": false,
"locked_by": null,
"items": [],
"delete_type": null,
"permanently_delete_after_days": 0
},
"auto_call_from_third_party_apps": {
"enable": false,
"locked": false,
"locked_by": null
},
"override_default_port": null,
"peer_to_peer_media": {
"enable": false,
"locked": false,
"locked_by": null
},
"advanced_encryption": null,
"display_call_feedback_survey": null,
"block_list_for_inbound_calls_and_messaging": {
"enable": false,
"locked": false,
"locked_by": null
},
"block_calls_as_threat": {
"enable": false,
"locked": false,
"locked_by": "..."
},
"online_fax": {
"enable": false,
"locked": false,
"locked_by": null,
"enable_new_fax_email_notifications": false,
"include_fax_as_attachment": false
},
"private_call_park": {
"enable": false,
"locked": false,
"locked_by": null,
"expiration_period": null,
"call_not_picked_up_action": 0,
"forward_to": {
"display_name": "...",
"extension_id": "...",
"extension_number": 0,
"extension_type": null,
"id": "..."
},
"sequence": null,
"music_on_park": {
"audio_id": "...",
"audio_name": "..."
}
},
"sms_template": {
"enable": false,
"locked": false,
"locked_by": null,
"sms_template_list": []
},
"call_screening": {
"enable": false,
"locked": false,
"locked_by": null,
"exclude_user_company_contacts": false
},
"sms_auto_reply": {
"enable": false,
"locked": false,
"locked_by": null
},
"allow_end_user_edit_call_handling": {
"enable": false,
"locked": false,
"locked_by": null
},
"connect_to_operator": {
"enable": false,
"locked": false,
"locked_by": null
},
"no_hold_conference": {
"enable": false,
"locked": false,
"locked_by": null
},
"conference_dtmf": {
"enable": false,
"locked": false,
"locked_by": null
},
"end_conference_call_when_originator_drops": {
"enable": false,
"locked": false,
"locked_by": null
},
"chat_channel": {
"enable": false,
"locked": false,
"locked_by": null
},
"desk_phone_smart_key_positions_layout": {
"enable": false,
"locked": false,
"locked_by": null
},
"auto_opt_out_in_call_queue": {
"enable": false,
"locked": false,
"locked_by": null,
"prompt_before_opt_out_call_queue": false
},
"allow_mobile_home_phone_callout": {
"enable": false,
"locked": false,
"locked_by": null
},
"use_callkit_for_incoming_call_notifications_in_ios": {
"enable": false,
"locked": false,
"locked_by": null
},
"hide_phone_call_history_in_ios": {
"enable": false,
"locked": false,
"locked_by": null
},
"obfuscate_sensitive_data_during_call": {
"enable": false,
"locked": false,
"locked_by": null
},
"prevent_users_upload_audio_files": {
"enable": false,
"locked": false,
"locked_by": null
},
"voicemail_tasks": {
"enable": false,
"locked": false,
"locked_by": null
},
"voicemail_intent_based_prioritization": {
"enable": false,
"locked": false,
"locked_by": null
},
"team_sms_thread_summary": {
"enable": false,
"locked": false,
"locked_by": null
},
"customize_line_name": {
"enable": false,
"locked": false,
"locked_by": null,
"user_line_name": null,
"common_area_line_name": null
},
"show_custom_disclaimer_when_using_zoom_phone": {
"enable": false,
"locked": false,
"locked_by": null,
"display_frequency": null,
"custom_disclaimer_list": []
}
}GETlist_auto_receptionists/auto-receptionistsList auto receptionists
Request
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The total number of records returned from a single API call. |
| next_page_token | string | No | The next page token paginates through large result sets. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_auto_receptionists"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_auto_receptionists",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/auto-receptionists Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"auto_receptionists": [],
"next_page_token": "...",
"page_size": 0,
"total_records": 0
}GETget_auto_receptionist_detail/auto-receptionists/:autoReceptionistIdGet an auto receptionist
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| autoReceptionistId | string | Yes | The auto receptionist ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_auto_receptionist_detail"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_auto_receptionist_detail",
"params": {
"autoReceptionistId": "<autoReceptionistId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/auto-receptionists/:autoReceptionistId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"cost_center": "...",
"department": "...",
"extension_id": "...",
"extension_number": 0,
"name": "...",
"timezone": "...",
"audio_prompt_language": null,
"holiday_hours": [],
"phone_numbers": [],
"site": {
"id": "...",
"name": "..."
},
"recording_storage_location": null,
"own_storage_name": "..."
}GETget_auto_receptionists_policy/auto-receptionists/:autoReceptionistId/policyGet an auto receptionist policy
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| autoReceptionistId | string | Yes | The unique identifier of the auto receptionist. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_auto_receptionists_policy"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_auto_receptionists_policy",
"params": {
"autoReceptionistId": "<autoReceptionistId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/auto-receptionists/:autoReceptionistId/policy Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"voicemail_access_members": [],
"voicemail_transcription": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_notification_by_email": {
"include_voicemail_file": false,
"include_voicemail_transcription": false,
"forward_voicemail_to_email": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"sms": {
"enable": false,
"international_sms": false,
"international_sms_countries": [],
"locked": false,
"locked_by": null,
"modified": false
}
}GETget_auto_receptionist_ivr/auto-receptionists/:autoReceptionistId/ivrGet auto receptionist IVR
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| autoReceptionistId | string | Yes | The unique identifier of the auto receptionist. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| hours_type | string | No | The query hours type: business_hours or closed_hours, default business_hours. |
| holiday_id | string | No | The auto receptionist holiday hours ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_auto_receptionist_ivr"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_auto_receptionist_ivr",
"params": {
"autoReceptionistId": "<autoReceptionistId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/auto-receptionists/:autoReceptionistId/ivr Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"audio_prompt": {
"id": "...",
"name": "..."
},
"caller_enters_no_action": {
"action": 0,
"audio_prompt_repeat": null,
"forward_to": {
"display_name": "...",
"extension_id": "...",
"extension_number": "...",
"id": "..."
}
},
"key_actions": []
}GETaccount_call_history/call-historyGet account's call history
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | The start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| keyword | string | No | Search by name, extension, number, email address, or call ID. |
| directions | string | No | The direction filter of the call logs. |
| connect_types | string | No | The connect type filter: internal or external. |
| number_types | string | No | The number type filter of the caller or callee. |
| call_types | string | No | The call type filter: general or emergency. |
| extension_types | string | No | The extension type filter of the call logs. |
| call_results | string | No | The call result filter of the call logs. |
| group_ids | string | No | The primary group filter of call logs. |
| site_ids | string | No | The site filter of call logs. |
| department | string | No | The department where the call log belongs. |
| cost_center | string | No | The cost center where the call log belongs. |
| time_type | string | No | Search call logs by start or end time. Default: start_time. |
| recording_status | string | No | Filter by recording status. |
| with_voicemail | boolean | No | The voicemail filter of the call logs. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "account_call_history"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "account_call_history",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-history Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_logs": [],
"call_history": [],
"from": "...",
"to": "...",
"page_count": 0,
"page_size": 0,
"total_records": 0,
"next_page_token": "..."
}GETget_call_path/call-history/:callHistoryUuid/call-pathGet call history
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| callHistoryUuid | string | Yes | The ID of the call history. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_call_path"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_call_path",
"params": {
"callHistoryUuid": "<callHistoryUuid>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-history/:callHistoryUuid/call-path Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"id": "...",
"call_history_uuid": "...",
"call_id": "...",
"connect_type": null,
"call_type": null,
"direction": null,
"international": null,
"hide_caller_id": false,
"end_to_end": false,
"caller_ext_id": "...",
"caller_name": "...",
"caller_did_number": "...",
"caller_ext_number": "...",
"caller_email": "...",
"caller_ext_type": null,
"callee_ext_id": "...",
"callee_name": "...",
"callee_email": "...",
"callee_did_number": "...",
"callee_ext_number": "...",
"callee_ext_type": null,
"department": "...",
"cost_center": "...",
"site_id": "...",
"group_id": "...",
"site_name": "...",
"start_time": "...",
"answer_time": "...",
"end_time": "...",
"call_path": [],
"caller_acconut_code": "...",
"callee_account_code": "...",
"call_elements": []
}GETget_user_ai_call_summary/users/:userId/ai-call-summaries/:aiCallSummaryIdGet User AI Call Summary Detail
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The owner's user ID. |
| aiCallSummaryId | string | Yes | The ID of the AI call summary. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_user_ai_call_summary"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_user_ai_call_summary",
"params": {
"userId": "<userId>",
"aiCallSummaryId": "<aiCallSummaryId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/ai-call-summaries/:aiCallSummaryId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"ai_call_summary_id": "...",
"account_id": "...",
"call_id": "...",
"user_id": "...",
"call_summary_rate": null,
"transcript_language": "...",
"call_summary": "...",
"next_steps": "...",
"detailed_summary": "...",
"created_time": "...",
"modified_time": "...",
"edited": false
}GETphone_user_call_history/users/:userId/call-historyGet user's call history
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID or email address. Use 'me' for authenticated user. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | The start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| keyword | string | No | Search by name, extension, number, email address, or call ID. |
| directions | string | No | The direction filter of the call logs. |
| connect_types | string | No | The connect type filter: internal or external. |
| number_types | string | No | The number type filter of the caller or callee. |
| call_types | string | No | The call type filter: general or emergency. |
| extension_types | string | No | The extension type filter of the call logs. |
| call_results | string | No | The call result filter of the call logs. |
| group_ids | string | No | The primary group filter of call logs. |
| site_ids | string | No | The site filter of call logs. |
| department | string | No | The department of which the call log belongs. |
| cost_center | string | No | The cost center of which the call log belongs. |
| time_type | string | No | Search call logs by start or end time. Default: start_time. |
| recording_status | string | No | Filter by recording status. |
| with_voicemail | boolean | No | The voicemail filter of the call logs. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_user_call_history"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_user_call_history",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/call-history Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_logs": [],
"call_elements": [],
"from": "...",
"to": "...",
"next_page_token": "...",
"page_count": 0,
"page_size": 0,
"total_records": 0
}GETsync_user_call_history/users/:userId/call-history/syncSync user's call history
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sync_type | string | No | Synchronization type: FSync (Full), ISync (Incremental), BSync (Backward). |
| count | number | No | The number of records returned within a single API call. |
| sync_token | string | No | The time range for returned records, used for locating next retrieval. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "sync_user_call_history"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "sync_user_call_history",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/call-history/sync Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_logs": [],
"call_elements": [],
"sync_token": "..."
}GETcallqueueanalytics/call-queues/analyticsList call queue analytics
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | The call start time in GMT yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | The call end time in GMT yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| site_id | string | No | The unique identifier of the site. |
| call_queue_ext_ids | string | No | The call queue extension ID list. |
| department | string | No | The department of which the call queue belongs. |
| cost_center | string | No | The cost center where the call queue belongs. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "callqueueanalytics"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "callqueueanalytics",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-queues/analytics Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_queues": [],
"from": "...",
"to": "...",
"page_size": 0,
"next_page_token": "..."
}GETlist_call_queues/call-queuesList call queues
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| site_id | string | No | Unique identifier of the site. |
| cost_center | string | No | The call queue's cost center. |
| department | string | No | The call queue's department. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| next_page_token | string | No | The next page token paginates through a large set of results. |
| page_size | number | No | The number of records returned from a single API call. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_call_queues"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_call_queues",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-queues Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_queues": [],
"next_page_token": "...",
"page_size": 0,
"total_records": 0
}GETget_a_call_queue/call-queues/:callQueueIdGet call queue details
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| callQueueId | string | Yes | The unique identifier of the call queue. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_a_call_queue"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_a_call_queue",
"params": {
"callQueueId": "<callQueueId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-queues/:callQueueId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"cost_center": "...",
"department": "...",
"extension_id": "...",
"extension_number": 0,
"id": "...",
"members": {
"users": [],
"common_areas": []
},
"name": "...",
"phone_numbers": [],
"site": {
"id": "...",
"name": "..."
},
"status": null,
"policy": {
"voicemail_access_members": []
},
"timezone": "...",
"audio_prompt_language": null,
"recording_storage_location": null,
"own_storage_name": "..."
}GETlist_call_queue_members/call-queues/:callQueueId/membersList call queue members
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| callQueueId | string | Yes | The call queue ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_call_queue_members"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_call_queue_members",
"params": {
"callQueueId": "<callQueueId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-queues/:callQueueId/members Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_queue_members": [],
"next_page_token": "...",
"page_size": 0,
"total_records": 0
}GETget_call_queue_recordings/call-queues/:callQueueId/recordingsGet call queue recordings
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| callQueueId | string | Yes | Unique identifier of the Call Queue. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | The start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_call_queue_recordings"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_call_queue_recordings",
"params": {
"callQueueId": "<callQueueId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-queues/:callQueueId/recordings Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"from": "...",
"next_page_token": "...",
"page_size": 0,
"recordings": [],
"to": "...",
"total_records": 0
}GETlist_cr_phone_numbers/phone-numbersList phone numbers
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| assigned_status | string | No | Number assignment status. |
| sub_account_id | string | No | Partner account ID from sub-account. |
| keyword | string | No | Partial string of the phone number. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The size of the page. |
| next_page_token | string | No | The current page number of returned records. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_cr_phone_numbers"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_cr_phone_numbers",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/phone-numbers Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"carrier_reseller_numbers": [],
"next_page_token": "...",
"page_size": 0,
"total_records": 0
}GETlist_call_logs_metrics/call-logs/metricsList call logs
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | The start date in yyyy-mm-dd format. |
| to | string | No | The end date in yyyy-mm-dd format. |
| site_id | string | No | The unique identifier of the site. |
| quality_type | string | No | Filter call logs by voice quality. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_call_logs_metrics"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_call_logs_metrics",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-logs/metrics Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_logs": [],
"from": "...",
"next_page_token": "...",
"page_size": 0,
"to": "...",
"total_records": 0
}GETget_call_qo_s/call-logs/:callId/qosGet call QoS
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| callId | string | Yes | The unique identifier of the call. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_call_qo_s"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_call_qo_s",
"params": {
"callId": "<callId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-logs/:callId/qos Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_id": "...",
"callee_qos": {
"device_private_ip": "...",
"device_public_ip": "...",
"receiving": [],
"sending": []
},
"caller_qos": {
"device_private_ip": "...",
"device_public_ip": "...",
"receiving": [],
"sending": []
}
}GETget_call_log_metrics_details/call-logs/:call_id/metricsGet call details from call log
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| call_id | string | Yes | The unique identifier of the phone call. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_call_log_metrics_details"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_call_log_metrics_details",
"params": {
"call_id": "<call_id>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-logs/:call_id/metrics Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_id": "...",
"callee": {
"codec": "...",
"device_private_ip": "...",
"device_public_ip": "...",
"device_type": "...",
"extension_number": "...",
"headset": "...",
"isp": "...",
"microphone": "...",
"phone_number": "...",
"site_id": "...",
"id": "...",
"extension_type": null,
"display_name": "..."
},
"caller": {
"codec": "...",
"device_private_ip": "...",
"device_public_ip": "...",
"device_type": "...",
"extension_number": "...",
"headset": "...",
"isp": "...",
"microphone": "...",
"phone_number": "...",
"site_id": "...",
"id": "...",
"extension_type": null,
"display_name": "..."
},
"date_time": "...",
"direction": "...",
"duration": 0,
"mos": "..."
}GETlist_past_call_metrics/call-logs/past-metricsList past call metrics
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | The start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| phone_number | string | No | Filter call logs of a specified phone number. |
| extension_number | string | No | Filter call logs of a specified extension number. |
| quality_type | string | No | Filter call logs by voice quality. |
| department | string | No | The department the extension belongs to. |
| cost_center | string | No | The cost center the extension belongs to. |
| directions | string | No | The directions of the call. |
| durations | string | No | The duration of the call filter. |
| site_id | string | No | The unique identifier of the site. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_past_call_metrics"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_past_call_metrics",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-logs/past-metrics Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_logs": [],
"from": "...",
"to": "...",
"next_page_token": "...",
"page_size": 0,
"total_records": 0
}GETlist_users_from_directory/directory/usersList users in directory
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| in_directory | boolean | No | Whether the user belongs to the directory. |
| site_id | string | No | Unique identifier of the site. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_users_from_directory"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_users_from_directory",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/directory/users Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"result": []
}GETlist_users_from_directory_by_site/sites/:siteId/directory/usersList users in a directory by site
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| siteId | string | Yes | Unique identifier of the site. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| in_directory | boolean | No | Whether the user belongs to the directory. |
| site_id | string | No | Unique identifier of the site to which users belong. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_users_from_directory_by_site"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_users_from_directory_by_site",
"params": {
"siteId": "<siteId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sites/:siteId/directory/users Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"result": []
}GETlist_external_contacts/external-contactsList external contacts
Request
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| next_page_token | string | No | The next page token paginates through a large set of results. |
| page_size | number | No | The number of records returned within a single API call. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_external_contacts"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_external_contacts",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/external-contacts Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"external_contacts": [],
"next_page_token": "...",
"page_size": 0
}GETgetusersfaxlogs/users/:extensionId/fax-logsGet extension's fax logs
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| extensionId | string | Yes | The extension ID of the fax log owner. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sender_number | string | No | The sender's fax number in E164 format. |
| receiver_number | string | No | The receiver's fax number in E164 format. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The token to retrieve the next page of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "getusersfaxlogs"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "getusersfaxlogs",
"params": {
"extensionId": "<extensionId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:extensionId/fax-logs Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"total_records": 0,
"fax_logs": []
}GETget_accounts_fax_logs/fax-logsGet account's fax logs
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| site_id | string | No | The site's unique ID. |
| sender_number | string | No | The sender's fax number in E164 format. |
| receiver_number | string | No | The receiver's fax number in E164 format. |
| extension_type | string | No | The extension type of fax's log owner. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The token to retrieve the next page of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_accounts_fax_logs"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_accounts_fax_logs",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/fax-logs Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"total_records": 0,
"fax_logs": []
}GETget_fax_log_details/fax-logs/:faxLogIdGet fax log details
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| faxLogId | string | Yes | The fax log's unique ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_fax_log_details"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_fax_log_details",
"params": {
"faxLogId": "<faxLogId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/fax-logs/:faxLogId Authorization: Bearer <your-api-key> Content-Type: application/json
GETdownloadfaxfile/fax-logs/:faxLogId/files/:fileIdDownload fax file
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| faxLogId | string | Yes | The fax log's unique ID. |
| fileId | string | Yes | The fax file ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "downloadfaxfile"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "downloadfaxfile",
"params": {
"faxLogId": "<faxLogId>",
"fileId": "<fileId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/fax-logs/:faxLogId/files/:fileId Authorization: Bearer <your-api-key> Content-Type: application/json
GETlist_calling_plans/calling-plansList calling plans
Request
No input parameters.
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_calling_plans"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_calling_plans",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/calling-plans Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"calling_plans": []
}GETget_phone_recordings_by_call_id_or_call_log_id/call-logs/:callId/recordingsGet recording by call ID
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | The unique ID of the call log (callLogId or callId). |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_phone_recordings_by_call_id_or_call_log_id"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_phone_recordings_by_call_id_or_call_log_id",
"params": {
"id": "<id>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-logs/:callId/recordings Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_id": "...",
"call_log_id": "...",
"call_history_id": "...",
"call_element_id": "...",
"callee_name": "...",
"callee_number": "...",
"callee_number_type": null,
"caller_name": "...",
"caller_number": "...",
"caller_number_type": null,
"outgoing_by": {
"name": "...",
"extension_number": "..."
},
"accepted_by": {
"name": "...",
"extension_number": "..."
},
"date_time": "...",
"direction": "...",
"download_url": "...",
"duration": 0,
"end_time": "...",
"id": "...",
"meeting_uuid": "...",
"owner": {
"extension_number": 0,
"id": "...",
"name": "...",
"type": null,
"extension_status": null,
"extension_deleted_time": "..."
},
"deleted_time": "...",
"days_left_auto_permantely_delete": 0,
"soft_deleted_type": null,
"recording_type": null,
"file_url": "...",
"disclaimer_status": null,
"caller_account_code": "...",
"callee_account_code": "..."
}GETphone_download_recording_file/recordings/:recordingId/downloadDownload a phone recording
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| fileId | string | Yes | The file ID of the phone recording. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_download_recording_file"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_download_recording_file",
"params": {
"fileId": "<fileId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/recordings/:recordingId/download Authorization: Bearer <your-api-key> Content-Type: application/json
GETphone_download_recording_transcript/recordings/:recordingId/transcriptDownload a phone recording transcript
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| recordingId | string | Yes | The phone recording ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_download_recording_transcript"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_download_recording_transcript",
"params": {
"recordingId": "<recordingId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/recordings/:recordingId/transcript Authorization: Bearer <your-api-key> Content-Type: application/json
GETget_phone_recordings/recordingsGet call recordings
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| owner_type | string | No | The owner type: null, user, callQueue, or commonArea. |
| recording_type | string | No | The recording type: null, OnDemand, or Automatic. |
| site_id | string | No | The site ID. Default: All sites. |
| query_date_type | string | No | Query date type: start_time or end_time. Default: start_time. |
| group_id | string | No | The group ID. Default: All groups. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned. Default: 30, max: 300. |
| next_page_token | string | No | The current page number of returned records. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_phone_recordings"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_phone_recordings",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/recordings Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"recordings": [],
"total_records": 0
}GETphone_user_recordings/users/:userId/recordingsGet user's recordings
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID or email address. Use 'me' for authenticated user. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through large result sets. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_user_recordings"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_user_recordings",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/recordings Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"from": "...",
"next_page_token": "...",
"page_count": 0,
"page_size": 0,
"recordings": [],
"to": "...",
"total_records": 0
}GETget_call_charges_usage_report/reports/call-chargesGet call charges usage report
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| billing_account_id | string | No | The billing account ID. |
| show_charges_only | boolean | No | Show calls with charges only. Default: false. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned. Default: 30, max: 300. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_call_charges_usage_report"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_call_charges_usage_report",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/reports/call-charges Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"total_records": 0,
"from": "...",
"to": "...",
"call_charges": []
}GETgetfaxchargesusagereport/reports/fax-chargesGet fax charges usage report
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| fax_id | string | No | The fax ID to filter charges for a specific fax. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned. Default: 30, max: 300. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "getfaxchargesusagereport"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "getfaxchargesusagereport",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/reports/fax-charges Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"total_records": 0,
"from": "...",
"to": "...",
"fax_charges": []
}GETget_ps_operation_logs/reports/operation-logsGet operation logs report
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd format. |
| to | string | No | End time and date in yyyy-mm-dd format. |
| category_type | string | No | Filter by the category of the action performed. Default: all. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_ps_operation_logs"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_ps_operation_logs",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/reports/operation-logs Authorization: Bearer <your-api-key> Content-Type: application/json
GETget_sms_charges_usage_report/reports/sms-chargesGet SMS/MMS charges usage report
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| show_charges_only | boolean | No | Show SMS/MMS with charges only. Default: false. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned. Default: 30, max: 300. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_sms_charges_usage_report"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_sms_charges_usage_report",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/reports/sms-charges Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"total_records": 0,
"from": "...",
"to": "...",
"sms_charges": []
}GETaccount_sms_session/sms/sessionsGet account's SMS sessions
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| session_type | string | No | Filter by session type: user, call_queue, auto_receptionist, or all. |
| phone_number | string | No | The sender's or receiver's phone number to filter SMS sessions. |
| filter_type | string | No | Filter by message timestamp type. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The current page number of returned records. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "account_sms_session"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "account_sms_session",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sms/sessions Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"sms_sessions": []
}GETsms_session_details/sms/sessions/:sessionIdGet SMS session details
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sessionId | string | Yes | The SMS session ID. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| sort | number | No | Order of SMS by creation time: 1=ascending, 2=descending. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The current page number of returned records. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "sms_session_details"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "sms_session_details",
"params": {
"sessionId": "<sessionId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sms/sessions/:sessionId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"sms_histories": []
}GETsms_by_message_id/sms/messages/:messageIdGet SMS by message ID
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sessionId | string | Yes | The SMS session ID. |
| messageId | string | Yes | The SMS message ID. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "sms_by_message_id"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "sms_by_message_id",
"params": {
"sessionId": "<sessionId>",
"messageId": "<messageId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sms/messages/:messageId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"attachments": [],
"date_time": "...",
"direction": "...",
"message": "...",
"message_id": "...",
"message_type": null,
"sender": {
"display_name": "...",
"owner": {
"id": "...",
"type": null
},
"phone_number": "..."
},
"to_members": []
}GETsms_session_sync/sms/sessions/syncSync SMS by session ID
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sessionId | string | Yes | The SMS session ID. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sync_type | string | No | Synchronization type: FSync (Full), ISync (Incremental), BSync (Backward). |
| count | number | No | The number of records returned within a single API call. |
| sync_token | string | No | The time range for returned records, used for locating next retrieval. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "sms_session_sync"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "sms_session_sync",
"params": {
"sessionId": "<sessionId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sms/sessions/sync Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"sms_histories": [],
"sync_token": "..."
}GETuser_sms_session/users/:userId/sms/sessionsGet user's SMS sessions
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID, user email, or 'me' when using OAuth token. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| session_type | string | No | Filter by session type: user, call_queue, auto_receptionist, or all. |
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| phone_number | string | No | The sender's or receiver's phone number to filter SMS sessions. |
| filter_type | string | No | Filter by message timestamp type. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The current page number of returned records. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "user_sms_session"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "user_sms_session",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/sms/sessions Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"sms_sessions": []
}GETget_sms_sessions/users/:userId/sms/sessions/:sessionIdList user's SMS sessions in descending order
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID, user email, or 'me' when using OAuth token. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| sync_type | string | No | Sync type: FSync (Full), BSync (Backward), ISync (Forward). |
| sync_token | string | No | The sync token for backward or forward sync. |
| count | number | No | The record count of each query. |
| session_type | string | No | Filter by session type: user, call_queue, auto_receptionist, or all. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_sms_sessions"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_sms_sessions",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/sms/sessions/:sessionId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"sms_sessions": [],
"sync_token": "..."
}GETget_account_policy_details/policyGet account policy details
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| policyType | string | Yes | The type of policy to retrieve. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_account_policy_details"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_account_policy_details",
"params": {
"policyType": "<policyType>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/policy Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"allow_emergency_calls": {
"enable": false,
"locked": false,
"locked_by": null,
"allow_emergency_calls_from_clients": false,
"allow_emergency_calls_from_deskphones": false
}
}GETphone_setting/settings/accountGet phone account settings
Request
No input parameters.
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_setting"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_setting",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/settings/account Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"byoc": {
"enable": false
},
"country": {
"code": "...",
"name": "..."
},
"multiple_sites": {
"enabled": false,
"site_code": false
},
"show_device_ip_for_call_log": {
"enable": false
},
"multiple_party_conference": {
"enable": false
},
"billing_account": {
"id": "...",
"name": "..."
}
}GETlist_phone_sites/sitesList phone sites
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| site_name | string | No | The name of the site to search. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_phone_sites"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_phone_sites",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sites Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"sites": [],
"total_records": 0
}GETget_a_site/sites/:siteIdGet phone site details
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| siteId | string | Yes | The unique identifier of the site. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_a_site"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_a_site",
"params": {
"siteId": "<siteId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/sites/:siteId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"country": {
"code": "...",
"name": "..."
},
"id": "...",
"main_auto_receptionist": {
"extension_id": "...",
"extension_number": 0,
"id": "...",
"name": "..."
},
"name": "...",
"short_extension": {
"length": 0
},
"site_code": 0,
"policy": {
"select_outbound_caller_id": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"allow_hide_outbound_caller_id": false
},
"personal_audio_library": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"allow_music_on_hold_customization": false,
"allow_voicemail_and_message_greeting_customization": false
},
"voicemail": {
"allow_delete": false,
"allow_download": false,
"allow_videomail": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_transcription": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_notification_by_email": {
"include_voicemail_file": false,
"include_voicemail_transcription": false,
"forward_voicemail_to_email": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"shared_voicemail_notification_by_email": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"international_calling": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"zoom_phone_on_mobile": {
"allow_calling_clients": [],
"allow_sms_mms_clients": [],
"allow_calling_sms_mms": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"sms": {
"enable": false,
"international_sms": false,
"international_sms_countries": [],
"locked": false,
"locked_by": null,
"modified": false,
"allow_copy": false,
"allow_paste": false
},
"elevate_to_meeting": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"hand_off_to_room": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"mobile_switch_to_carrier": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"delegation": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"ad_hoc_call_recording": {
"enable": false,
"recording_start_prompt": false,
"recording_transcription": false,
"play_recording_beep_tone": {
"enable": false,
"play_beep_volume": null,
"play_beep_time_interval": null,
"play_beep_member": null
},
"locked": false,
"locked_by": null,
"modified": false
},
"auto_call_recording": {
"allow_stop_resume_recording": false,
"disconnect_on_recording_failure": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"recording_calls": null,
"recording_explicit_consent": false,
"recording_start_prompt": false,
"recording_transcription": false,
"play_recording_beep_tone": {
"enable": false,
"play_beep_volume": null,
"play_beep_time_interval": null,
"play_beep_member": null
},
"inbound_audio_notification": {
"recording_start_prompt": false,
"recording_explicit_consent": false
},
"outbound_audio_notification": {
"recording_start_prompt": false,
"recording_explicit_consent": false
}
},
"call_handling_forwarding_to_other_users": {
"enable": false,
"call_forwarding_type": null,
"locked": false,
"locked_by": null,
"modified": false
},
"check_voicemails_over_phone": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"call_queue_pickup_code": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"call_queue_opt_out_reason": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"call_queue_opt_out_reasons_list": []
},
"show_user_last_transferred_call": false,
"auto_delete_data_after_retention_duration": {
"enable": false,
"reset": false,
"locked": false,
"locked_by": null,
"items": [],
"delete_type": null
},
"call_park": {
"call_not_picked_up_action": 0,
"enable": false,
"expiration_period": null,
"forward_to": {
"display_name": "...",
"extension_id": "...",
"extension_number": 0,
"extension_type": null,
"id": "..."
},
"sequence": null,
"locked": false,
"locked_by": null,
"modified": false
},
"call_overflow": {
"call_overflow_type": null,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"call_transferring": {
"call_transferring_type": null,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"audio_intercom": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"block_calls_without_caller_id": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"block_external_calls": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"block_business_hours": false,
"block_closed_hours": false,
"block_holiday_hours": false,
"block_call_action": null,
"block_call_change_type": null,
"e2e_encryption": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
}
},
"force_off_net": {
"enable": false,
"allow_extension_only_users_call_users_outside_site": false
},
"external_calling_on_zoom_room_common_area": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"zoom_phone_on_pwa": {
"allow_calling": false,
"allow_sms_mms": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"sms_auto_reply": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"allow_end_user_edit_call_handling": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"allow_caller_reach_operator": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"forward_call_outside_of_site": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"allow_mobile_home_phone_callout": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"obfuscate_sensitive_data_during_call": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"prevent_users_upload_audio_files": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_tasks": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_intent_based_prioritization": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"team_sms_thread_summary": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"display_call_feedback_survey": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"feedback_type": null,
"feedback_mos": {
"enable": false,
"min": 0,
"max": 0
},
"feedback_duration": {
"enable": false,
"min": 0,
"max": 0
}
},
"call_live_transcription": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"transcription_start_prompt": {
"enable": false,
"audio_id": "...",
"audio_name": "..."
}
},
"call_screening": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"exclude_user_company_contacts": false
},
"sms_template": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"sms_template_list": []
},
"advanced_encryption": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"disable_incoming_unencrypted_voicemail": false
},
"customize_line_name": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"user_line_name": null,
"common_area_line_name": null
},
"auto_opt_out_in_call_queue": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"prompt_before_opt_out_call_queue": false
},
"incoming_call_notification": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"block_type": null
},
"call_summary": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"auto_call_summary": false,
"call_summary_start_prompt": {
"enable": false,
"audio_id": "...",
"audio_name": "..."
}
},
"schedule_firmware_update": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"repeat_type": null,
"repeat_setting": null,
"time_period_start": 0,
"time_period_end": 0,
"time_zone": "...",
"end_setting": {
"never_end": false,
"end_date": "..."
}
},
"zoom_phone_on_desktop": {
"allow_calling_clients": [],
"allow_sms_mms_clients": [],
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
}
},
"sip_zone": {
"id": "...",
"name": "..."
},
"caller_id_name": "...",
"india_state_code": "...",
"india_city": "...",
"india_sdca_npa": "...",
"india_entity_name": "...",
"default_emergency_address": {
"address_line1": "...",
"address_line2": "...",
"city": "...",
"country": "...",
"id": "...",
"is_default": false,
"level": null,
"state_code": "...",
"status": null,
"zip": "..."
}
}GETlist_phone_users/usersList phone users
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| site_id | string | No | The unique identifier of the site. |
| calling_type | number | No | The type of calling plan. |
| status | string | No | The status of the Zoom Phone user. |
| department | string | No | The department where the user belongs. |
| cost_center | string | No | The cost center where the user belongs. |
| keyword | string | No | Search by name, extension number, or phone number. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned from a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "list_phone_users"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "list_phone_users",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"next_page_token": "...",
"page_size": 0,
"total_records": 0,
"users": []
}GETphone_user/users/:userIdGet a user's profile
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID or email address. Use 'me' for authenticated user. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_user"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_user",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"calling_plans": [],
"cost_center": "...",
"department": "...",
"email": "...",
"emergency_address": {
"address_line1": "...",
"address_line2": "...",
"city": "...",
"country": "...",
"id": "...",
"state_code": "...",
"zip": "..."
},
"extension_id": "...",
"extension_number": 0,
"id": "...",
"phone_numbers": [],
"phone_user_id": "...",
"policy": {
"ad_hoc_call_recording": {
"enable": false,
"recording_start_prompt": false,
"recording_transcription": false,
"play_recording_beep_tone": {
"enable": false,
"play_beep_volume": null,
"play_beep_time_interval": null,
"play_beep_member": null
},
"locked": false,
"locked_by": null
},
"ad_hoc_call_recording_access_members": [],
"auto_call_recording": {
"allow_stop_resume_recording": false,
"disconnect_on_recording_failure": false,
"enable": false,
"locked": false,
"locked_by": null,
"recording_calls": null,
"recording_explicit_consent": false,
"recording_start_prompt": false,
"recording_transcription": false,
"play_recording_beep_tone": {
"enable": false,
"play_beep_volume": null,
"play_beep_time_interval": null,
"play_beep_member": null
},
"inbound_audio_notification": {
"recording_start_prompt": false,
"recording_explicit_consent": false
},
"outbound_audio_notification": {
"recording_start_prompt": false,
"recording_explicit_consent": false
}
},
"auto_call_recording_access_members": [],
"call_overflow": {
"call_overflow_type": null,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"call_park": {
"call_not_picked_up_action": 0,
"enable": false,
"expiration_period": null,
"forward_to": {
"display_name": "...",
"extension_id": "...",
"extension_number": 0,
"extension_type": null,
"id": "..."
},
"locked": false,
"locked_by": null
},
"call_transferring": {
"call_transferring_type": null,
"enable": false,
"locked": false,
"locked_by": null
},
"delegation": false,
"elevate_to_meeting": false,
"emergency_address_management": {
"enable": false,
"prompt_default_address": false
},
"emergency_calls_to_psap": false,
"forwarding_to_external_numbers": false,
"call_handling_forwarding_to_other_users": {
"enable": false,
"call_forwarding_type": null,
"locked": false,
"locked_by": null,
"modified": false
},
"hand_off_to_room": {
"enable": false,
"locked": false,
"locked_by": null
},
"international_calling": false,
"mobile_switch_to_carrier": {
"enable": false,
"locked": false,
"locked_by": null
},
"select_outbound_caller_id": {
"enable": false,
"allow_hide_outbound_caller_id": false,
"locked": false,
"locked_by": null
},
"sms": {
"enable": false,
"international_sms": false,
"international_sms_countries": [],
"locked": false,
"locked_by": null,
"allow_copy": false,
"allow_paste": false
},
"voicemail": {
"allow_delete": false,
"allow_download": false,
"allow_transcription": false,
"allow_videomail": false,
"enable": false
},
"voicemail_access_members": [],
"zoom_phone_on_mobile": {
"allow_calling_clients": [],
"allow_sms_mms_clients": [],
"allow_calling_sms_mms": false,
"enable": false,
"locked": false,
"locked_by": null
},
"personal_audio_library": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false,
"allow_music_on_hold_customization": false,
"allow_voicemail_and_message_greeting_customization": false
},
"voicemail_transcription": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_notification_by_email": {
"include_voicemail_file": false,
"include_voicemail_transcription": false,
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"shared_voicemail_notification_by_email": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"check_voicemails_over_phone": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"audio_intercom": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"peer_to_peer_media": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"e2e_encryption": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"outbound_calling": {
"enable": false,
"locked": false,
"modified": false
},
"outbound_sms": {
"enable": false,
"locked": false,
"modified": false
},
"allow_end_user_edit_call_handling": {
"enable": false,
"locked": false,
"modified": false
},
"voicemail_intent_based_prioritization": {
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
},
"voicemail_tasks": {
"enable": false,
"locked": false,
"modified": false,
"locked_by": null
},
"zoom_phone_on_desktop": {
"allow_calling_clients": [],
"allow_sms_mms_clients": [],
"enable": false,
"locked": false,
"locked_by": null,
"modified": false
}
},
"site_admin": false,
"site_id": "...",
"status": null
}GETphone_user_settings/users/:userId/settingsGet a user's profile settings
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID or email address. Use 'me' for authenticated user. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_user_settings"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_user_settings",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/settings Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"area_code": "...",
"audio_prompt_language": "...",
"company_number": "...",
"country": {
"code": "...",
"country_code": "...",
"name": "..."
},
"delegation": {
"assistants": [],
"privacy": false,
"privileges": null,
"locked": false
},
"desk_phone": {
"devices": [],
"keys_positions": {
"primary_number": "..."
},
"phone_screen_lock": false,
"pin_code": "..."
},
"extension_number": 0,
"music_on_hold_id": "...",
"outbound_caller": {
"number": "..."
},
"outbound_caller_ids": [],
"status": null,
"voice_mail": [],
"intercom": {
"audio_intercoms": [],
"device": {
"id": "...",
"name": "..."
}
},
"auto_call_recording_access_members": [],
"ad_hoc_call_recording_access_members": [],
"shared_lines_call_setting": {
"shared_line_appearances": {
"executives": []
},
"shared_line_groups": {
"receive_calls": false,
"shared_line_group": []
}
}
}GETget_voicemail_details_by_call_id_or_call_log_id/call-logs/:callId/voicemailsGet user voicemail details from a call log
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID or email address of the user. |
| id | string | Yes | The unique ID of the call log (callLogId or callId). |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_voicemail_details_by_call_id_or_call_log_id"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_voicemail_details_by_call_id_or_call_log_id",
"params": {
"userId": "<userId>",
"id": "<id>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/call-logs/:callId/voicemails Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_id": "...",
"call_log_id": "...",
"call_history_id": "...",
"call_element_id": "...",
"callee_name": "...",
"callee_number": "...",
"callee_number_type": null,
"caller_name": "...",
"caller_number": "...",
"caller_number_type": null,
"date_time": "...",
"download_url": "...",
"duration": 0,
"id": "...",
"status": null,
"transcription": {
"content": "...",
"status": null,
"engine": "..."
},
"caller_account_code": "...",
"callee_account_code": "..."
}GETphone_user_voice_mails/users/:userId/voicemailsGet user's voicemails
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| userId | string | Yes | The user ID or email address. Use 'me' for authenticated user. |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | No | The status of the voice mail. |
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| trash | boolean | No | Whether to query voicemails from trash. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through large result sets. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_user_voice_mails"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_user_voice_mails",
"params": {
"userId": "<userId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/users/:userId/voicemails Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"from": "...",
"next_page_token": "...",
"page_count": 0,
"page_size": 0,
"to": "...",
"total_records": 0,
"voice_mails": []
}GETaccount_voice_mails/voicemailsGet account voicemails
Request
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | No | The status of the voice mail. |
| site_id | string | No | The site ID. |
| owner_type | string | No | The owner type. |
| voicemail_type | string | No | The voicemail type. |
| from | string | No | Start time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| to | string | No | End time and date in yyyy-mm-dd or yyyy-MM-dd'T'HH:mm:ss'Z' format. |
| trashed | boolean | No | Whether to query voicemails from trash. Default: false. |
Pagination
| Name | Type | Required | Description |
|---|---|---|---|
| page_size | number | No | The number of records returned within a single API call. |
| next_page_token | string | No | The next page token paginates through a large set of results. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "account_voice_mails"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "account_voice_mails",
"params": {}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/voicemails Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"from": "...",
"next_page_token": "...",
"page_count": 0,
"page_size": 0,
"to": "...",
"total_records": 0,
"voice_mails": []
}GETphone_download_voicemail_file/voicemails/:voicemailId/downloadDownload a phone voicemail
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| fileId | string | Yes | The file ID of the phone voicemail. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "phone_download_voicemail_file"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "phone_download_voicemail_file",
"params": {
"fileId": "<fileId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/voicemails/:voicemailId/download Authorization: Bearer <your-api-key> Content-Type: application/json
GETget_voicemail_details/voicemails/:voicemailIdGet voicemail details
Request
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| voicemailId | string | Yes | The unique identifier of the voicemail. |
Response
Examples
1. Describe method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe_method",
"arguments": {
"service": "zoom-phone",
"method": "get_voicemail_details"
}
}
}2. Call method
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "call_zoom-phone",
"arguments": {
"method": "get_voicemail_details",
"params": {
"voicemailId": "<voicemailId>"
}
}
}
}Request
GET https://app.ferrule.io/api/v1/zoom-phone/voicemails/:voicemailId Authorization: Bearer <your-api-key> Content-Type: application/json
Response
{
"call_id": "...",
"call_log_id": "...",
"call_history_id": "...",
"call_element_id": "...",
"callee_name": "...",
"callee_number": "...",
"callee_number_type": null,
"caller_name": "...",
"caller_number": "...",
"caller_number_type": null,
"date_time": "...",
"download_url": "...",
"duration": 0,
"id": "...",
"status": null,
"transcription": {
"content": "...",
"status": null,
"engine": "..."
},
"deleted_time": "...",
"days_left_auto_permantely_delete": 0,
"soft_deleted_type": null,
"intent_detect_status": null,
"intent_results": [],
"voice_mail_task": {
"status": null,
"content": "...",
"feedback": null
},
"caller_account_code": "...",
"callee_account_code": "..."
}