### GET /pbxware.splan.list Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves all available service plans for a tenant. ```APIDOC ## GET pbxware.splan.list ### Description Retrieves all available service plans. ### Method GET (via action parameter) ### Endpoint /index.php?action=pbxware.splan.list ### Parameters #### Query Parameters - **apikey** (string) - Required - API authentication key - **tenant** (integer) - Required - Tenant ID ### Response #### Success Response (200) - **id** (string) - Service plan name #### Response Example { "1": "Basic Plan", "2": "Premium Plan", "3": "Enterprise Plan" } ``` -------------------------------- ### Get Extension Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves detailed configuration for a specific extension. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.configuration&tenant={{TenantID}}&id={{ExtID}}" ``` -------------------------------- ### Get Tenant Configuration using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves the detailed configuration for a specific tenant identified by its ID. This provides a comprehensive overview of all settings for that tenant. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.configuration&id={{TenantID}}" ``` -------------------------------- ### Get Tenant Package Configuration using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves the detailed configuration for a specific tenant package identified by its ID. This provides a comprehensive view of all settings associated with the package. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.configuration&id={{TenantPackageID}}" ``` ```json # Response { "42": { "name": "API_Package", "service_plan": "1", "allowed_service_plans": "1", "ext": "100", "voicemail": "100", "queues": "100", "ivr": "100", "cf": "100", "rgroups": "100", "hot_desking": "100", "restrict_splans": "0", "call_recordings": "1", "monitoring": "1", "call_screening": "1" } } ``` -------------------------------- ### Get Ring Group Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves the detailed configuration settings for a specific ring group. Requires tenant ID and ring group ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ring_group.configuration&tenant={{TenantID}}&id={{RG_ID}}" ``` -------------------------------- ### Get Service Plan Rates Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves rates for a specific service plan using the service plan ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.splan.rates&tenant={{TenantID}}&id={{SP-ID}}" ``` -------------------------------- ### Call Forwarding - Get Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves call forwarding configuration for an extension. ```APIDOC ## Call Forwarding - Get ### Description Retrieves call forwarding configuration for an extension. ### Method GET ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.callfwd.get&tenant={{TenantID}}&ext={{ExtID}} ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.ext.es.callfwd.get). - **tenant** (string) - Required - The tenant ID. - **ext** (string) - Required - The extension ID. ### Response #### Success Response (200) - **success** (string) - Indicates successful retrieval of call forwarding configuration. ``` -------------------------------- ### Get Extension Call Rating Info Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves call rating information for an extension. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.call_rating_info&tenant={{TenantID}}&id={{ExtID}}" ``` -------------------------------- ### Call Forwarding - Get Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves the current call forwarding configuration for a specified extension. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.callfwd.get&tenant={{TenantID}}&ext={{ExtID}}" ``` -------------------------------- ### Do Not Disturb - Get Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves DND status for an extension. ```APIDOC ## Do Not Disturb - Get ### Description Retrieves DND status for an extension. ### Method GET ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.dnd.get&tenant={{TenantID}}&ext={{ExtID}} ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.ext.es.dnd.get). - **tenant** (string) - Required - The tenant ID. - **ext** (string) - Required - The extension ID. ### Response #### Success Response (200) - **success** (string) - Indicates successful retrieval of DND status. ``` -------------------------------- ### Add Extension Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new extension with full configuration options. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.add&tenant={{TenantID}}&name=John%20Doe&email=john.doe@test.com&ext=901&secret=SecurePass123!&pin=1111&prot=sip&status=1&incominglimit=2&outgoinglimit=2&voicemail=1&billing=0&call_rating=1&creditlimit=10&reminderbalance=50&service_plan={{SP-ID}}&acc_slave=0&limitenable=1&limittype=Monthly&softlimit=20&hardlimit=10¬ification_email=john.doe@test.com" ``` -------------------------------- ### Instant Recording - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures instant recording settings for an extension. Use 'status=1' to enable. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.instrecord.set&tenant={{TenantID}}&ext={{ExtID}}&status=1" ``` -------------------------------- ### List Extensions Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves all extensions for a tenant. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.list&tenant={{TenantID}}" ``` -------------------------------- ### Do Not Disturb - Get Status Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves the current Do Not Disturb status for an extension. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.dnd.get&tenant={{TenantID}}&ext={{ExtID}}" ``` -------------------------------- ### Add Tenant using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new tenant with essential configuration details, including name, code, assigned package, and extension length. The response provides the ID of the newly created tenant. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.add&tenant_name=AcmeCorp&tenant_code=900&package={{TenantPackageID}}&ext_length=3&country=135&national=0&international=00&callgroups=1,2,3,4,5&max_contacts=3" ``` ```json # Response { "success": "Tenant created successfully", "id": 15 } ``` -------------------------------- ### Caller ID - Get Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves caller ID configuration for an extension. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.callerid.get&tenant={{TenantID}}&ext={{ExtID}}" ``` -------------------------------- ### List Applications Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of available applications. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.apps.list" ``` -------------------------------- ### POST /pbxware.tenant.clirouting.add Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new CLI routing rule for a specific tenant. ```APIDOC ## POST pbxware.tenant.clirouting.add ### Description Creates a new CLI routing rule for a tenant. ### Method GET (via action parameter) ### Endpoint /index.php?action=pbxware.tenant.clirouting.add ### Parameters #### Query Parameters - **apikey** (string) - Required - API authentication key - **tenant** (integer) - Required - Tenant ID - **prefix** (string) - Required - Routing prefix - **trunk** (integer) - Required - Trunk ID - **priority** (integer) - Required - Routing priority ### Response #### Success Response (200) - **success** (string) - Confirmation message - **id** (integer) - Created route ID #### Response Example { "success": "CLI route created successfully", "id": 10 } ``` -------------------------------- ### PBXware API Authentication and Response Formats Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Demonstrates the base URL format for all API calls and the expected success and error response structures. Requires an API key and system IP address for authentication. ```bash # Base URL format for all API calls curl "http://{IP}/index.php?apikey={API_Key}&action={action_name}&{parameters}" ``` ```json # Response format (success) { "success": "Object created successfully", "id": 123 } ``` ```json # Response format (error) { "error": "Error description" } ``` -------------------------------- ### Add Tenant Package using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new tenant package with specified resource limits and feature availability. The response includes the ID of the newly created package. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.add&name=API_Package&restrict_splans=0&allowed_service_plans=1&call_recordings=1&monitoring=1&call_screening=1&extensions=100&voicemails=100&queues=100&cfs=100&rgroups=100&hot_desking=100&ivrs=100" ``` ```json # Response { "success": "Package created successfully", "id": 42 } ``` -------------------------------- ### Follow Me - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures Follow Me settings with specified destinations and ring time. Multiple destinations can be provided as a comma-separated string. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.followme.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&ringtime=25&destinations=902,5551234567" ``` -------------------------------- ### Add Trunk Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new SIP trunk for external connectivity. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.trunk.add&server=1&name=MainTrunk&provider_id=20&type=friend&dtmfmode=rfc2833&status=active&country=135&national=0&international=00&emerg_trunk=no&host=10.1.165.92&username=admin&insecure=port,invite&looserouting=yes&incominglimit=100&outgoinglimit=100&busylevel=0&codecs=ulaw,alaw&codecs_ptime=50,60" ``` -------------------------------- ### POST /pbxware.ivr.add Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new Interactive Voice Response (IVR) menu for a tenant. ```APIDOC ## POST pbxware.ivr.add ### Description Creates a new Interactive Voice Response menu. ### Method GET (via action parameter) ### Endpoint /index.php?action=pbxware.ivr.add ### Parameters #### Query Parameters - **apikey** (string) - Required - API authentication key - **tenant** (integer) - Required - Tenant ID - **name** (string) - Required - IVR name - **greeting** (string) - Required - Greeting file name - **timeout** (integer) - Required - Timeout in seconds - **invalid_dest_type** (integer) - Required - Destination type for invalid input - **invalid_dest_ext** (integer) - Required - Extension ID for invalid input ### Response #### Success Response (200) - **success** (string) - Confirmation message - **id** (integer) - Created IVR ID #### Response Example { "success": "IVR created successfully", "id": 25 } ``` -------------------------------- ### List Tenant CLI Routes Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves all CLI routing rules configured for a given tenant. Requires the tenant ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.clirouting.list&tenant={{TenantID}}" ``` -------------------------------- ### List Service Plans Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all available service plans for a tenant, showing their IDs and names. Requires tenant ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.splan.list&tenant={{TenantID}}" ``` -------------------------------- ### Instant Recording - Set Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures instant recording settings for an extension. ```APIDOC ## Instant Recording - Set ### Description Configures instant recording settings for an extension. ### Method POST ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.instrecord.set&tenant={{TenantID}}&ext={{ExtID}}&status=1 ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.ext.es.instrecord.set). - **tenant** (string) - Required - The tenant ID. - **ext** (string) - Required - The extension ID. - **status** (integer) - Required - 1 to enable instant recording, 0 to disable. ### Response #### Success Response (200) - **success** (string) - Indicates successful configuration of instant recording. ``` -------------------------------- ### List Tenant Packages using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all available tenant packages in the system, mapping package IDs to their names. This is useful for selecting a package when creating or editing tenants. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.list" ``` ```json # Response { "1": "Basic Package", "2": "Premium Package", "42": "API_Package" } ``` -------------------------------- ### List Tenants using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all tenants configured in the system, mapping tenant IDs to their names. This is useful for managing existing tenants. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.list" ``` ```json # Response { "15": "AcmeCorp", "16": "TechStartup" } ``` -------------------------------- ### Follow Me - Set Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures Follow Me settings with multiple destinations. ```APIDOC ## Follow Me - Set ### Description Configures Follow Me settings with multiple destinations. ### Method POST ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.followme.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&ringtime=25&destinations=902,5551234567 ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.ext.es.followme.set). - **tenant** (string) - Required - The tenant ID. - **ext** (string) - Required - The extension ID. - **status** (integer) - Required - 1 to enable Follow Me, 0 to disable. - **ringtime** (integer) - Optional - The ring time in seconds for each destination. - **destinations** (string) - Required - A comma-separated list of destinations (extensions or numbers). ### Response #### Success Response (200) - **success** (string) - Indicates successful configuration of Follow Me. ``` -------------------------------- ### List Trunks Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves all trunks configured in the system. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.trunk.list&server=1" ``` -------------------------------- ### Monitor System Activity Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieve lists of monitorable extensions and currently active calls. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.monitor.list&tenant={{TenantID}}" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.monitor.live_calls&tenant={{TenantID}}" ``` -------------------------------- ### Add Tenant CLI Route Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new CLI routing rule for a specific tenant. Requires tenant ID, prefix, trunk ID, and priority. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.clirouting.add&tenant={{TenantID}}&prefix=1&trunk={{TrunkID}}&priority=1" ``` -------------------------------- ### Call Pickup - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures call pickup settings for an extension. Use 'status=1' to enable. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.callpickup.set&tenant={{TenantID}}&ext={{ExtID}}&status=1" ``` -------------------------------- ### Manage Routes and Destinations Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieve lists of available routes, destinations, and destination groups. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.route.list" # Response { "135": "United States", "825": "United Kingdom", "1": "Afghanistan" } ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.destination.list" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.destination.groups" ``` -------------------------------- ### DID Management - Add DID (Standard Mode) Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new DID in standard mode. ```APIDOC ## Add DID (Standard Mode) ### Description Creates a new DID in standard mode. ### Method POST ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.did.add&tenant={{TenantID}}&did=0038735900901&status=1&dest_type=0&dest_ext={{ExtID}} ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.did.add). - **tenant** (string) - Required - The tenant ID. - **did** (string) - Required - The Direct Inward Dialing number. - **status** (integer) - Required - 1 to enable the DID, 0 to disable. - **dest_type** (integer) - Required - The destination type (0 for extension). - **dest_ext** (string) - Required - The extension ID to route the call to. ### Response #### Success Response (200) - **success** (string) - Indicates successful DID creation. - **id** (integer) - The ID of the newly created DID. ``` -------------------------------- ### Group Hunt - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures group hunt settings for an extension, specifying group members. Members are provided as a comma-separated list. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.grouphunt.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&members=902,903" ``` -------------------------------- ### Add IVR Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new Interactive Voice Response (IVR) menu. Requires tenant ID, name, greeting, timeout, and invalid destination details. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ivr.add&tenant={{TenantID}}&name=MainIVR&greeting=welcome&timeout=10&invalid_dest_type=0&invalid_dest_ext={{ExtID}}" ``` -------------------------------- ### Delete Tenant Package using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Removes a tenant package from the system. Use with caution as this action is irreversible. The response confirms successful deletion. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.delete&id={{TenantPackageID}}" ``` ```json # Response { "success": "Package deleted successfully" } ``` -------------------------------- ### Edit Tenant Package using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Modifies an existing tenant package. Ensure the correct TenantPackageID is provided. The response confirms the successful edit and returns the package ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.edit&server=1&id={{TenantPackageID}}&restrict_splans=0&allowed_service_plans=1&extensions=200&voicemails=200" ``` ```json # Response { "success": "Package edited successfully", "id": "42" } ``` -------------------------------- ### List DID CLI Routes Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves all CLI routing rules associated with a specific DID number. Requires tenant ID and DID ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.did.clirouting.list&tenant={{TenantID}}&did={{DID_ID}}" ``` -------------------------------- ### Edit Extension Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Modifies an existing extension's configuration. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.edit&tenant={{TenantID}}&id={{ExtID}}&name=Jane%20Doe&status=1&incominglimit=5&outgoinglimit=5" ``` -------------------------------- ### List IVRs Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all IVRs configured for a tenant, showing their IDs and names. Requires tenant ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ivr.list&tenant={{TenantID}}" ``` -------------------------------- ### Delete Tenant using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Removes a tenant from the system. This action is irreversible and should be used with caution. The response confirms successful deletion. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.delete&id={{TenantID}}" ``` ```json # Response { "success": "Tenant deleted successfully" } ``` -------------------------------- ### Edit Tenant using PBXware API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Modifies an existing tenant's configuration with a wide range of options. Ensure the correct TenantID is specified. The response confirms the edit and returns the tenant ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.edit&server=1&id={{TenantID}}&status=1&tenant_code=999&country=825&area_code=555&national=1&international=11&glocom_dns_srv_lookup=1&glocomproxy=192.168.1.1&defaultserver=1&absolutetimeout=20000&cdrvoicemail=2&faxformat=auto&recordglobal=1&recordformat=gsm&audiolang=English&callgroups=1,2,3&localcodecs=ulaw&max_contacts=10" ``` ```json # Response { "success": "Tenant edited successfully", "id": "15" } ``` -------------------------------- ### Remote Access - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures remote access settings for an extension, including a PIN. Ensure the PIN is kept secure. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.remoteaccess.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&pin=1234" ``` -------------------------------- ### Wake-up Call - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures a wake-up call for an extension at a specified time. The time format is HH:MM. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.wakeupcall.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&time=07:00" ``` -------------------------------- ### DID Management - List DIDs Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves all DIDs for a tenant. ```APIDOC ## List DIDs ### Description Retrieves all DIDs for a tenant. ### Method GET ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.did.list&tenant={{TenantID}} ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.did.list). - **tenant** (string) - Required - The tenant ID. ### Response #### Success Response (200) - **(object)** - A key-value map where keys are DID IDs and values are the DID numbers. ``` -------------------------------- ### POST /pbxware.ring_group.add Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new ring group for simultaneous or sequential ringing. ```APIDOC ## POST pbxware.ring_group.add ### Description Creates a new ring group for simultaneous or sequential ringing. ### Method GET (via action parameter) ### Endpoint /index.php?action=pbxware.ring_group.add ### Parameters #### Query Parameters - **apikey** (string) - Required - API authentication key - **tenant** (integer) - Required - Tenant ID - **name** (string) - Required - Ring group name - **ext** (integer) - Required - Extension number - **strategy** (string) - Required - Ringing strategy - **members** (string) - Required - Comma separated member extensions - **ringtime** (integer) - Required - Ring time in seconds ### Response #### Success Response (200) - **success** (string) - Confirmation message - **id** (integer) - Created ring group ID #### Response Example { "success": "Ring group created successfully", "id": 30 } ``` -------------------------------- ### Set Tenant Trunks Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Assigns trunks to a specific tenant. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.trunks.set&tenant={{TenantID}}&trunks={{TrunkID1}},{{TrunkID2}},{{TrunkID3}}" ``` -------------------------------- ### DID Group - List All Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all existing DID groups on the server. This is useful for managing DID organization. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.didgroup.list&server=1" ``` -------------------------------- ### Call Monitoring - Set Configuration Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures call monitoring capabilities for an extension, specifying the mode (e.g., 'listen'). ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.callmonitoring.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&mode=listen" ``` -------------------------------- ### List Tenant Trunks Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves trunks assigned to a specific tenant. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.trunks.list&tenant={{TenantID}}" ``` -------------------------------- ### Retrieve Dashboard Metrics Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Endpoints for monitoring system status, including extensions, services, calls, and hardware usage. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.ext_online" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.services" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.sip_registrations" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.calls" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.glocom_editions" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.glocom_users" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.licensing" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.disk_usage" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.cpu" ``` ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.dashboard.memory" ``` -------------------------------- ### Call Pickup - Set Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures call pickup settings for an extension. ```APIDOC ## Call Pickup - Set ### Description Configures call pickup settings for an extension. ### Method POST ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.callpickup.set&tenant={{TenantID}}&ext={{ExtID}}&status=1 ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.ext.es.callpickup.set). - **tenant** (string) - Required - The tenant ID. - **ext** (string) - Required - The extension ID. - **status** (integer) - Required - 1 to enable call pickup, 0 to disable. ### Response #### Success Response (200) - **success** (string) - Indicates successful configuration of call pickup. ``` -------------------------------- ### List Ring Groups Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all ring groups for a tenant, including their IDs and names. Requires tenant ID. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ring_group.list&tenant={{TenantID}}" ``` -------------------------------- ### DID Group - Add New Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Creates a new DID group for organizing Direct Inward Dialing numbers. Requires a server ID, name, and description. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.didgroup.add&server=1&name=MainGroup&description=Main%20DID%20Group" ``` -------------------------------- ### Tenant Management API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt APIs for managing tenants, including creation, modification, listing, and deletion. ```APIDOC ## Tenant Management ### Add Tenant Creates a new tenant with specified configuration settings. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.tenant.add`. - **tenant_name** (string) - Required - The name of the tenant. - **tenant_code** (string) - Required - A unique code for the tenant. - **package** (integer) - Required - The ID of the tenant package to assign. - **ext_length** (integer) - Optional - The length of extension numbers. - **country** (integer) - Optional - The country ID. - **national** (integer) - Optional - National dialing prefix setting. - **international** (string) - Optional - International dialing prefix. - **callgroups** (string) - Optional - Comma-separated list of call group IDs. - **max_contacts** (integer) - Optional - Maximum number of contacts. ### Edit Tenant Modifies an existing tenant's configuration with extensive options. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.tenant.edit`. - **server** (integer) - Required - The server ID. - **id** (integer) - Required - The ID of the tenant to edit. - **status** (integer) - Optional - Tenant status (e.g., 1 for active). - **tenant_code** (string) - Optional - The tenant code. - **country** (integer) - Optional - The country ID. - **area_code** (string) - Optional - Area code. - **national** (integer) - Optional - National dialing prefix setting. - **international** (integer) - Optional - International dialing prefix setting. - **glocom_dns_srv_lookup** (integer) - Optional - Enable GLOCON DNS SRV lookup. - **glocomproxy** (string) - Optional - GLOCON proxy address. - **defaultserver** (integer) - Optional - Default server ID. - **absolutetimeout** (integer) - Optional - Absolute timeout in milliseconds. - **cdrvoicemail** (integer) - Optional - CDR voicemail setting. - **faxformat** (string) - Optional - Fax format (e.g., 'auto'). - **recordglobal** (integer) - Optional - Enable global recording. - **recordformat** (string) - Optional - Recording format (e.g., 'gsm'). - **audiolang** (string) - Optional - Audio language. - **callgroups** (string) - Optional - Comma-separated list of call group IDs. - **localcodecs** (string) - Optional - Local codecs (e.g., 'ulaw'). - **max_contacts** (integer) - Optional - Maximum number of contacts. ### List Tenants Retrieves all tenants in the system. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.tenant.list`. ### Get Tenant Configuration Retrieves detailed configuration for a specific tenant. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.tenant.configuration`. - **id** (integer) - Required - The ID of the tenant. ### Delete Tenant Removes a tenant from the system. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.tenant.delete`. - **id** (integer) - Required - The ID of the tenant to delete. ### Request Example (Add Tenant) ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.add&tenant_name=AcmeCorp&tenant_code=900&package={{TenantPackageID}}&ext_length=3&country=135&national=0&international=00&callgroups=1,2,3,4,5&max_contacts=3" ``` ### Response Example (Add Tenant) ```json { "success": "Tenant created successfully", "id": 15 } ``` ### Request Example (Edit Tenant) ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.tenant.edit&server=1&id={{TenantID}}&status=1&tenant_code=999&country=825&area_code=555&national=1&international=11&glocom_dns_srv_lookup=1&glocomproxy=192.168.1.1&defaultserver=1&absolutetimeout=20000&cdrvoicemail=2&faxformat=auto&recordglobal=1&recordformat=gsm&audiolang=English&callgroups=1,2,3&localcodecs=ulaw&max_contacts=10" ``` ### Response Example (Edit Tenant) ```json { "success": "Tenant edited successfully", "id": "15" } ``` ### Response Example (List Tenants) ```json { "15": "AcmeCorp", "16": "TechStartup" } ``` ### Response Example (Delete Tenant) ```json { "success": "Tenant deleted successfully" } ``` ``` -------------------------------- ### Apps API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt API to retrieve a list of available applications. ```APIDOC ## Apps API ### List Apps #### Description Retrieves available applications. #### Method GET #### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.apps.list #### Query Parameters - **apikey** (string) - Required - API authentication key. - **action** (string) - Required - Specifies the action to perform (pbxware.apps.list). ``` -------------------------------- ### Tenant Package Management API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt APIs for managing tenant packages, which define resource limits and feature availability for tenants. ```APIDOC ## Tenant Package Management ### Add Tenant Package Creates a new tenant package that defines resource limits and feature availability for tenants. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.package.add`. - **name** (string) - Required - The name of the new tenant package. - **restrict_splans** (integer) - Optional - Whether to restrict service plans (0 or 1). - **allowed_service_plans** (integer) - Optional - Allowed service plans. - **call_recordings** (integer) - Optional - Enable call recordings (0 or 1). - **monitoring** (integer) - Optional - Enable monitoring (0 or 1). - **call_screening** (integer) - Optional - Enable call screening (0 or 1). - **extensions** (integer) - Optional - Maximum number of extensions. - **voicemails** (integer) - Optional - Maximum number of voicemails. - **queues** (integer) - Optional - Maximum number of queues. - **cfs** (integer) - Optional - Maximum number of call forwards. - **rgroups** (integer) - Optional - Maximum number of ring groups. - **hot_desking** (integer) - Optional - Enable hot desking (0 or 1). - **ivrs** (integer) - Optional - Maximum number of IVRs. ### Edit Tenant Package Modifies an existing tenant package configuration. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.package.edit`. - **server** (integer) - Required - The server ID. - **id** (integer) - Required - The ID of the tenant package to edit. - **restrict_splans** (integer) - Optional - Whether to restrict service plans (0 or 1). - **allowed_service_plans** (integer) - Optional - Allowed service plans. - **extensions** (integer) - Optional - Maximum number of extensions. - **voicemails** (integer) - Optional - Maximum number of voicemails. ### List Tenant Packages Retrieves all tenant packages in the system. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.package.list`. ### Get Tenant Package Configuration Retrieves detailed configuration for a specific tenant package. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.package.configuration`. - **id** (integer) - Required - The ID of the tenant package. ### Delete Tenant Package Removes a tenant package from the system. #### Method GET #### Endpoint `/index.php` #### Query Parameters - **apikey** (string) - Required - Your API key for authentication. - **action** (string) - Required - Set to `pbxware.package.delete`. - **id** (integer) - Required - The ID of the tenant package to delete. ### Request Example (Add Tenant Package) ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.add&name=API_Package&restrict_splans=0&allowed_service_plans=1&call_recordings=1&monitoring=1&call_screening=1&extensions=100&voicemails=100&queues=100&cfs=100&rgroups=100&hot_desking=100&ivrs=100" ``` ### Response Example (Add Tenant Package) ```json { "success": "Package created successfully", "id": 42 } ``` ### Request Example (Edit Tenant Package) ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.package.edit&server=1&id={{TenantPackageID}}&restrict_splans=0&allowed_service_plans=1&extensions=200&voicemails=200" ``` ### Response Example (Edit Tenant Package) ```json { "success": "Package edited successfully", "id": "42" } ``` ### Response Example (List Tenant Packages) ```json { "1": "Basic Package", "2": "Premium Package", "42": "API_Package" } ``` ### Response Example (Get Tenant Package Configuration) ```json { "42": { "name": "API_Package", "service_plan": "1", "allowed_service_plans": "1", "ext": "100", "voicemail": "100", "queues": "100", "ivr": "100", "cf": "100", "rgroups": "100", "hot_desking": "100", "restrict_splans": "0", "call_recordings": "1", "monitoring": "1", "call_screening": "1" } } ``` ### Response Example (Delete Tenant Package) ```json { "success": "Package deleted successfully" } ``` ``` -------------------------------- ### Wake-up Call - Set Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Configures wake-up call settings for an extension. ```APIDOC ## Wake-up Call - Set ### Description Configures wake-up call settings for an extension. ### Method POST ### Endpoint http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.ext.es.wakeupcall.set&tenant={{TenantID}}&ext={{ExtID}}&status=1&time=07:00 ### Parameters #### Query Parameters - **apikey** (string) - Required - API key for authentication. - **action** (string) - Required - Specifies the action to perform (pbxware.ext.es.wakeupcall.set). - **tenant** (string) - Required - The tenant ID. - **ext** (string) - Required - The extension ID. - **status** (integer) - Required - 1 to enable wake-up call, 0 to disable. - **time** (string) - Required - The time for the wake-up call (HH:MM format). ### Response #### Success Response (200) - **success** (string) - Indicates successful configuration of wake-up call. ``` -------------------------------- ### DID - List All Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt Retrieves a list of all Direct Inward Dialing (DID) numbers configured for a specific tenant. The response maps DID IDs to their numbers. ```bash curl "http://{{IP}}/index.php?apikey={{API_Key}}&action=pbxware.did.list&tenant={{TenantID}}" ``` -------------------------------- ### Tenant Trunk Management API Source: https://context7.com/bicomsystems/pbxware-api_mt_automation/llms.txt APIs for managing the assignment of trunks to tenants. ```APIDOC ## Set Tenant Trunks ### Description Assigns trunks to a specific tenant. ### Method POST ### Endpoint /index.php ### Query Parameters - **apikey** (string) - Required - API key for authentication - **action** (string) - Required - `pbxware.tenant.trunks.set` - **tenant** (integer) - Required - The ID of the tenant - **trunks** (string) - Required - Comma-separated list of trunk IDs to assign ### Response #### Success Response (200) - **success** (string) - Confirmation message ### Response Example ```json { "success": "Trunks assigned successfully" } ``` ## List Tenant Trunks ### Description Retrieves trunks assigned to a specific tenant. ### Method GET ### Endpoint /index.php ### Query Parameters - **apikey** (string) - Required - API key for authentication - **action** (string) - Required - `pbxware.tenant.trunks.list` - **tenant** (integer) - Required - The ID of the tenant ### Response #### Success Response (200) - **(object)** - A map where keys are trunk IDs and values are trunk names. ### Response Example ```json { "8": "MainTrunk", "9": "BackupTrunk" } ``` ```