Interactive Documentation and Endpoint List
Description of documentation and endpoint table for working with REST API in MikoPBX
MikoPBX REST API follows the OpenAPI standard. The interactive documentation is built directly into the PBX and always contains the current list of endpoints, parameters, and schemas for your version of the system.
How to Open the Documentation
Go to "System" → "API Keys".

Click the "API Documentation" button.

Interactive Documentation Features
The documentation is built on the OpenAPI standard and provides a complete description of all MikoPBX REST API endpoints.
Endpoint navigation — in the left panel, all endpoints are grouped by section.

For each endpoint, a brief description is shown along with the request method (GET, POST, PUT, PATCH, DELETE) and the endpoint with the PBX address substituted. All available request parameters are displayed below.

Code examples — ready-made request examples in different languages are available for each endpoint. The switcher is located below the parameters panel — Shell / cURL is shown by default, other languages are also available (click the language name to switch — in this guide, Python 3).
A server response example is shown below.

Online request execution — the documentation allows you to send real requests directly from the browser and receive responses from your PBX. The server is determined automatically from the current page address.

At the bottom of the page you will find possible response codes with brief explanations, as well as all body parameters for the selected response.

Endpoint List
Base prefix for all paths:
/pbxcore/api/v3
Telephony and Routing
Employees
GET
/employees
Get list of employees
POST
/employees
Create a new employee
GET
/employees/{id}
Get employee by ID
PUT
/employees/{id}
Update employee
PATCH
/employees/{id}
Partially update employee
DELETE
/employees/{id}
Delete employee
GET
/employees:getDefault
Get default values
POST
/employees:batchCreate
Batch create employees
POST
/employees:batchDelete
Batch delete employees
POST
/employees:import
Import employees (preview)
POST
/employees:confirmImport
Confirm import
POST
/employees:export
Export employees
POST
/employees:exportTemplate
Export template
Extensions
GET
/extensions
Get list of extensions
GET
/extensions/{id}
Get extension by ID
POST
/extensions:available
Check number availability
GET
/extensions:getForSelect
Get extensions for dropdown list
POST
/extensions/{id}:getPhoneRepresent
Get phone representation
POST
/extensions:getPhonesRepresent
Get phones representation
SIP Providers
GET
/sip-providers
Get list of SIP providers
POST
/sip-providers
Create SIP provider
GET
/sip-providers/{id}
Get SIP provider by ID
PUT
/sip-providers/{id}
Update SIP provider
PATCH
/sip-providers/{id}
Partially update SIP provider
DELETE
/sip-providers/{id}
Delete SIP provider
GET
/sip-providers/{id}:copy
Copy SIP provider
GET
/sip-providers:getDefault
Get SIP provider template
IAX Providers
GET
/iax-providers
Get list of IAX providers
POST
/iax-providers
Create IAX provider
GET
/iax-providers/{id}
Get IAX provider by ID
PUT
/iax-providers/{id}
Update IAX provider
PATCH
/iax-providers/{id}
Partially update IAX provider
DELETE
/iax-providers/{id}
Delete IAX provider
GET
/iax-providers/{id}:copy
Copy IAX provider
GET
/iax-providers:getDefault
Get IAX provider template
Providers (combined SIP + IAX list)
GET
/providers
Get list of all providers
GET
/providers/{id}
Get provider by ID
GET
/providers:getForSelect
Get providers for dropdown list
Call Queues
GET
/call-queues
Get list of queues
POST
/call-queues
Create a new queue
GET
/call-queues/{id}
Get queue by ID
PUT
/call-queues/{id}
Update queue
PATCH
/call-queues/{id}
Partially update queue
DELETE
/call-queues/{id}
Delete queue
GET
/call-queues/{id}:copy
Copy queue
GET
/call-queues:getDefault
Get default values
IVR Menu
GET
/ivr-menu
Get list of IVR menus
POST
/ivr-menu
Create a new IVR menu
GET
/ivr-menu/{id}
Get IVR menu by ID
PUT
/ivr-menu/{id}
Update IVR menu
PATCH
/ivr-menu/{id}
Partially update IVR menu
DELETE
/ivr-menu/{id}
Delete IVR menu
GET
/ivr-menu/{id}:copy
Copy IVR menu
GET
/ivr-menu:getDefault
Get default values
Incoming Routing
GET
/incoming-routes
Get list of incoming routes
POST
/incoming-routes
Create incoming route
GET
/incoming-routes/{id}
Get incoming route by ID
PUT
/incoming-routes/{id}
Update incoming route
PATCH
/incoming-routes/{id}
Partially update incoming route
DELETE
/incoming-routes/{id}
Delete incoming route
POST
/incoming-routes/{id}:copy
Copy incoming route
GET
/incoming-routes:getDefault
Get default values
GET
/incoming-routes:getDefaultRoute
Get default route
POST
/incoming-routes:changePriority
Change route priorities
Outbound Routing
GET
/outbound-routes
Get list of outbound routes
POST
/outbound-routes
Create outbound route
GET
/outbound-routes/{id}
Get outbound route by ID
PUT
/outbound-routes/{id}
Update outbound route
PATCH
/outbound-routes/{id}
Partially update outbound route
DELETE
/outbound-routes/{id}
Delete outbound route
GET
/outbound-routes/{id}:copy
Copy outbound route
GET
/outbound-routes:getDefault
Get default values
POST
/outbound-routes:changePriority
Change route priorities
Off-Work Time
GET
/off-work-times
Get list of time conditions
POST
/off-work-times
Create time condition
GET
/off-work-times/{id}
Get time condition by ID
PUT
/off-work-times/{id}
Update time condition
PATCH
/off-work-times/{id}
Partially update time condition
DELETE
/off-work-times/{id}
Delete time condition
GET
/off-work-times/{id}:copy
Copy time condition
GET
/off-work-times:getDefault
Get default values
POST
/off-work-times:changePriorities
Change condition priorities
Conference Rooms
GET
/conference-rooms
Get list of conference rooms
POST
/conference-rooms
Create conference room
GET
/conference-rooms/{id}
Get conference room by ID
PUT
/conference-rooms/{id}
Update conference room
PATCH
/conference-rooms/{id}
Partially update conference room
DELETE
/conference-rooms/{id}
Delete conference room
GET
/conference-rooms:getDefault
Get conference room template
Dialplan Applications
GET
/dialplan-applications
Get list of dialplan applications
POST
/dialplan-applications
Create dialplan application
GET
/dialplan-applications/{id}
Get dialplan application by ID
PUT
/dialplan-applications/{id}
Update dialplan application
PATCH
/dialplan-applications/{id}
Partially update dialplan application
DELETE
/dialplan-applications/{id}
Delete dialplan application
GET
/dialplan-applications/{id}:copy
Copy dialplan application
GET
/dialplan-applications:getDefault
Get dialplan application template
Sound Files
GET
/sound-files
Get list of sound files
POST
/sound-files
Create sound file
GET
/sound-files/{id}
Get sound file by ID
PUT
/sound-files/{id}
Update sound file
PATCH
/sound-files/{id}
Partially update sound file
DELETE
/sound-files/{id}
Delete sound file
GET
/sound-files:getDefault
Get default values
GET
/sound-files:getForSelect
Get for dropdown list
GET
/sound-files:playback
Play back sound file
POST
/sound-files:uploadFile
Upload sound file
POST
/sound-files:convertAudioFile
Convert audio file
System File Customization
GET
/custom-files
Get list of custom files
POST
/custom-files
Create new custom file
GET
/custom-files/{id}
Get custom file by ID
PUT
/custom-files/{id}
Update custom file
PATCH
/custom-files/{id}
Partially update custom file
DELETE
/custom-files/{id}
Delete custom file
GET
/custom-files:getDefault
Get default values
Monitoring and Statistics
PBX Status
GET
/pbx-status:getActiveCalls
Get active calls
GET
/pbx-status:getActiveChannels
Get active channels
SIP Devices
GET
/sip:getStatuses
Get statuses of all SIP devices
GET
/sip:getPeersStatuses
Get SIP peer statuses (legacy)
GET
/sip:getRegistry
Get registration status (legacy)
POST
/sip:processAuthFailures
Process authentication failures
GET
/sip/{id}:getStatus
Get SIP device status
GET
/sip/{id}:getStats
Get SIP device statistics
GET
/sip/{id}:getHistory
Get connection history
GET
/sip/{id}:getSecret
Get SIP password
GET
/sip/{id}:getAuthFailureStats
Get authentication failure statistics
POST
/sip/{id}:clearAuthFailureStats
Clear failure statistics
POST
/sip/{id}:forceCheck
Force status check
SIP Providers (Monitoring)
GET
/sip-providers:getStatuses
Get statuses of all SIP providers
GET
/sip-providers/{id}:getStatus
Get SIP provider status
GET
/sip-providers/{id}:getHistory
Get connection history
GET
/sip-providers/{id}:getStats
Get SIP provider statistics
POST
/sip-providers/{id}:forceCheck
Force registration check
POST
/sip-providers/{id}:updateStatus
Update provider status
IAX Providers (Monitoring)
GET
/iax-providers:getStatuses
Get statuses of all IAX providers
GET
/iax-providers/{id}:getStatus
Get IAX provider status
GET
/iax-providers/{id}:getHistory
Get connection history
GET
/iax-providers/{id}:getStats
Get IAX provider statistics
POST
/iax-providers/{id}:forceCheck
Force registration check
POST
/iax-providers/{id}:updateStatus
Update provider status
GET
/iax:getRegistry
Get IAX provider registration status
Providers (Monitoring)
GET
/providers:getStatuses
Get statuses of all providers
GET
/providers/{id}:getStatus
Get provider status
GET
/providers/{id}:getHistory
Get provider history
GET
/providers/{id}:getStats
Get provider statistics
POST
/providers/{id}:updateStatus
Update provider status
Call Records (CDR)
GET
/cdr
Get list of CDR records
GET
/cdr/{id}
Get CDR record by ID
DELETE
/cdr/{id}
Delete CDR record
GET
/cdr:getMetadata
Get CDR metadata
GET
/cdr:playback
Play back call recording
GET
/cdr:download
Download call recording
Advice and Recommendations
GET
/advice:getList
Get list of system notifications
GET
/advice:refresh
Refresh notification cache
Authentication and Access
Authentication
POST
/auth:login
Log in to the system
POST
/auth:refresh
Refresh access token
POST
/auth:logout
Log out of the system
API Keys
GET
/api-keys
Get list of API keys
POST
/api-keys
Create a new API key
GET
/api-keys/{id}
Get API key by ID
PUT
/api-keys/{id}
Update API key
PATCH
/api-keys/{id}
Partially update API key
DELETE
/api-keys/{id}
Delete API key
GET
/api-keys:getDefault
Get default values
POST
/api-keys:generateKey
Generate a new key
AMI Users
GET
/asterisk-managers
Get list of AMI users
POST
/asterisk-managers
Create a new AMI user
GET
/asterisk-managers/{id}
Get AMI user by ID
PUT
/asterisk-managers/{id}
Update AMI user
PATCH
/asterisk-managers/{id}
Partially update AMI user
DELETE
/asterisk-managers/{id}
Delete AMI user
GET
/asterisk-managers/{id}:copy
Copy AMI user
GET
/asterisk-managers:getDefault
Get default values
ARI Users
GET
/asterisk-rest-users
Get list of ARI users
POST
/asterisk-rest-users
Create a new ARI user
GET
/asterisk-rest-users/{id}
Get ARI user by ID
PUT
/asterisk-rest-users/{id}
Update ARI user
PATCH
/asterisk-rest-users/{id}
Partially update ARI user
DELETE
/asterisk-rest-users/{id}
Delete ARI user
GET
/asterisk-rest-users:getDefault
Get default values
Passkeys
GET
/passkeys
Get list of passkeys
POST
/passkeys
Create a new passkey
GET
/passkeys/{id}
Get passkey by ID
PATCH
/passkeys/{id}
Update passkey
DELETE
/passkeys/{id}
Delete passkey
GET
/passkeys:checkAvailability
Check passkey availability
GET
/passkeys:authenticationStart
Start passkey authentication
POST
/passkeys:authenticationFinish
Finish passkey authentication
POST
/passkeys:registrationStart
Start passkey registration
POST
/passkeys:registrationFinish
Finish passkey registration
Passwords
GET
/passwords:generate
Generate password
POST
/passwords:validate
Validate password strength
POST
/passwords:checkDictionary
Check password against dictionary
POST
/passwords:batchValidate
Batch validate passwords
POST
/passwords:batchCheckDictionary
Batch dictionary check
Users
GET
/users:available
Check email availability
Network Filters
GET
/network-filters
Get list of network filters
GET
/network-filters/{id}
Get network filter by ID
GET
/network-filters:getForSelect
Get filters for dropdown list
System Settings
System Operations
GET
/system:ping
Check system availability
GET
/system:checkAuth
Check authentication
GET
/system:datetime
Get system time
GET
/system:getAvailableLanguages
Get available languages
GET
/system:checkForUpdates
Get detailed update information
GET
/system:checkIfNewReleaseAvailable
Quick check for new version availability
GET
/system:getDeleteStatistics
Get deletion statistics
POST
/system:reboot
Reboot the system
POST
/system:shutdown
Shut down the system
POST
/system:upgrade
Upgrade the system
POST
/system:restoreDefault
Restore default settings
POST
/system:changeLanguage
Change system language
POST
/system:convertAudioFile
Convert audio file
POST
/system:executeBashCommand
Execute bash command
POST
/system:executeSqlRequest
Execute SQL query
POST
/system:updateMailSettings
Update mail settings
General Settings
GET
/general-settings
Get general settings
PUT
/general-settings
Update general settings
PATCH
/general-settings
Partially update general settings
GET
/general-settings/{id}
Get specific setting
GET
/general-settings:getDefault
Get default values
POST
/general-settings:updateCodecs
Update codec settings
Network Interfaces and Routing
GET
/network
Get list of network interfaces
GET
/network/{id}
Get network interface by ID
DELETE
/network/{id}
Delete network interface
GET
/network:getConfig
Get full network configuration
GET
/network:getNatSettings
Get NAT settings
POST
/network:saveConfig
Save network configuration
Firewall
GET
/firewall
Get list of firewall rules
POST
/firewall
Create firewall rule
GET
/firewall/{id}
Get firewall rule by ID
PUT
/firewall/{id}
Update firewall rule
PATCH
/firewall/{id}
Partially update firewall rule
DELETE
/firewall/{id}
Delete firewall rule
GET
/firewall:getDefault
Get default values
GET
/firewall:getBannedIps
Get list of banned IPs
POST
/firewall:unbanIp
Unban IP address
POST
/firewall:enable
Enable firewall
POST
/firewall:disable
Disable firewall
Intrusion Prevention (Fail2Ban)
GET
/fail2ban
Get Fail2Ban settings
PUT
/fail2ban
Update Fail2Ban settings
PATCH
/fail2ban
Partially update Fail2Ban settings
Time Settings
GET
/time-settings:getAvailableTimezones
Get list of available timezones
Mail Settings
GET
/mail-settings
Get mail settings
PUT
/mail-settings
Update mail settings
PATCH
/mail-settings
Partially update mail settings
DELETE
/mail-settings
Reset mail settings
GET
/mail-settings:getDefault
Get default values
GET
/mail-settings:getDiagnostics
Get mail settings diagnostics
GET
/mail-settings:getOAuth2Url
Get OAuth2 authorization URL
POST
/mail-settings:refreshToken
Refresh OAuth2 token
POST
/mail-settings:testConnection
Test SMTP server connection
POST
/mail-settings:sendTestEmail
Send test email
Storage
GET
/storage:usage
Get storage usage statistics
GET
/storage:list
Get list of available storage devices
POST
/storage:mount
Mount storage device
POST
/storage:umount
Unmount storage device
POST
/storage:mkfs
Format storage device
POST
/storage:statusMkfs
Get formatting status
S3 Cloud Storage
GET
/s3-storage
Get S3 storage configuration
PUT
/s3-storage
Update S3 storage configuration
PATCH
/s3-storage
Partially update S3 configuration
GET
/s3-storage:stats
Get S3 synchronization statistics
GET
/s3-storage:testConnection
Test S3 connection
Modules
GET
/modules
Get list of modules
POST
/modules
Create module
GET
/modules/{id}
Get module by ID
PUT
/modules/{id}
Update module
PATCH
/modules/{id}
Partially update module
DELETE
/modules/{id}
Delete module
GET
/modules/{id}:getModuleInfo
Get module information
GET
/modules/{id}:getModuleLink
Get module download link
GET
/modules/{id}:getDownloadStatus
Get download status
POST
/modules/{id}:startDownload
Start module download
POST
/modules/{id}:installFromRepo
Install module from repository
POST
/modules:installFromPackage
Install module from package
POST
/modules:getMetadataFromPackage
Get metadata from package
POST
/modules/{id}:enable
Enable module
POST
/modules/{id}:disable
Disable module
POST
/modules/{id}:uninstall
Uninstall module
POST
/modules:updateAll
Update all modules
GET
/modules:getAvailableModules
Get available modules
GET
/modules:getInstallationStatus
Get installation status
GET
/modules:getDefault
Get default module settings
Licensing
GET
/license:getLicenseInfo
Get license information
GET
/license:ping
Check license server connection
GET
/license:resetKey
Reset license key
GET
/license:sendPBXMetrics
Send PBX metrics
POST
/license:captureFeatureForProductId
Capture feature for product
POST
/license:processUserRequest
Process user request
File Operations
GET
/files/{id}
Get file contents
PUT
/files/{id}
Upload/update file
DELETE
/files/{id}
Delete file
POST
/files:upload
Upload file (chunked)
GET
/files:uploadStatus
Check upload status
POST
/files:downloadFirmware
Download firmware
GET
/files:firmwareStatus
Check firmware download status
Diagnostics
System Information
GET
/sysinfo:getInfo
Get system information
GET
/sysinfo:getExternalIpInfo
Get external IP address
GET
/sysinfo:getHypervisorInfo
Get hypervisor information
GET
/sysinfo:getDMIInfo
Get DMI information
System Logs
GET
/syslog:getLogsList
Get list of log files
POST
/syslog:getLogFromFile
Get log file contents
POST
/syslog:getLogTimeRange
Get log time range
POST
/syslog:eraseFile
Clear log file
POST
/syslog:startCapture
Start packet capture
POST
/syslog:stopCapture
Stop packet capture
POST
/syslog:prepareArchive
Prepare log archive
POST
/syslog:downloadArchive
Download log archive
POST
/syslog:downloadLogFile
Download log file
OpenAPI Documentation
GET
/openapi:getSpecification
Get OpenAPI specification
GET
/openapi:getAclRules
Get API ACL rules
GET
/openapi:getDetailedPermissions
Get detailed permissions list
GET
/openapi:getSimplifiedPermissions
Get simplified permissions list
GET
/openapi:getValidationSchemas
Get validation schemas
POST
/openapi:clearCache
Clear OpenAPI cache
Search
GET
/search:getSearchItems
Global search
Documentation Links
GET
/wiki-links:getLink
Get documentation link
User Activity Tracking
POST
/user-page-tracker:pageView
Track page view
POST
/user-page-tracker:pageLeave
Track page leave
Last updated
Was this helpful?

