Difference between revisions of "MOR API"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(176 intermediate revisions by 16 users not shown)
Line 1: Line 1:
[[File:warning.png|100px|alt="warning"|link=]]<big><big><big>IMPORTANT!!! API methods described here are for newest MOR version. For previous versions please check appropriate [http://wiki.kolmisoft.com/index.php/MOR_Manual#Old_Manuals manual].</big></big></big>
[[File:api.png|right|alt="api"|link=]]
<mkmeta>Application Program Interface for MOR Class 5 Softswitch</mkmeta>
<br><br>
=About=
=About=
MOR API lets other software interact with MOR without knowing the internal structure of the database (DB) and other logic.
MOR API lets other software interact with MOR without knowing the internal structure of the database (DB) and other logic.
Line 4: Line 9:
MOR accepts requests by HTML POST and returns results in XML.
MOR accepts requests by HTML POST and returns results in XML.


 
<br><br>
=MOR users that are allowed to use MOR API=
=MOR users that are allowed to use MOR API=
* Admin
* Admin
* Reseller
* Reseller
* Accountant - only by using Admin Hash and Secret key
* Simple User


* Accountant - only by using Admin Hash and Secret key
<br><br>
<br><br>


Line 16: Line 21:


== API Related ==
== API Related ==
* [[API Configuration]] – configuration options for API.
* [[MOR API hash construction|Hash construction]] – how to construct hash to authenticate data over API.
<br>


* [[API Configuration]] - configuration options for API.
==Aggregate==
* [[MOR API hash construction|Hash construction]] - how to construct hash to authenticate data over API.
* [[MOR API aggregate get | aggregate_get]] - for getting MOR aggregate statistics.  


==Login==
<br>


* [[MOR API login|user_login]] - logs user in to MOR.
==Autodialer==
* [[MOR API logout|user_logout]] - logs user out from MOR.
* [[MOR API autodialer upload numbers | autodialer_upload_numbers]] - upload numbers from CSV file to existing Autodialer Campaign.
* [[MOR API autodialer get campaign statistics | autodialer_get_campaign_statistics]] - gets Autodialer campaign statistics for selected period.
* [[MOR API autodialer redial all failed calls | autodialer_redial_all_failed_calls]] - initiate Redial all failed calls action for specific campaign.
* [[MOR API autodialer get campaign ivr poll results | autodialer_get_campaign_ivr_poll_results]] - gets Autodialer camoaign ivr poll results.
* [[MOR API autodialer change campaign status | autodialer_change_campaign_status]] - changes Autodialer campaign status.


==User==
<br>
 
==Balance==
* [[MOR API user balance update | user_balance_update]] (change_user_balance) – changes User's Balance
Various methods to retrieve User balance
* [[MOR API user_balance_get|user_balance_get]] (balance) – retrieves a User Balance.
* [[Balance in phone | user_simple_balance_get]] (simple_balance) – gets User's Balance
* [[MOR API user balance get by psw | user_balance_get_by_psw]] – gets User's Balance by his owned Device's Password
* [[MOR API User Balance get by Username | user_balance_get_by_username]] – gets User's Balance by his owned Device's Username


* [[MOR API user_register| user_register]] - create new user from params.
<br>
* [[MOR API user_details | user_details_get]] - gets user details
* [[MOR_API_user_details_update| user_details_update]] - update user from params.


==Callback==
==Callback==
NOTE: A Callback addon is needed. Does not work on a limited version.
* [[MOR API callback init|callback_init]] (callback) – initiates callback.


* [[MOR API callback init|callback_init]] - initiates callback.
<br>


==Accounting==
==Calling Cards==
 
* [[MOR API card_by_cli_update| card_by_cli_update]] (cc_by_cli) – creates and updates calling cards, including adding and transferring funds, by being identified according the Caller_ID.
* [[MOR API invoices_get|invoices_get]] - retrieves a list of invoices in a selected time period.
* [[MOR API card_from_group_sell| card_from_group_sell]] (buy_card_from_callingroup) – sells cards from calling card group.
* [[MOR API card_group_get| card_group_get]] (show_calling_card_group) – show calling group info.
* [[MOR API card_balance_get| card_balance_get]] (card_balance_get) – show card's balance.
* [[MOR API card_payment_add| card_payment_add]] – add payment to the calling card.
* [[MOR_API_Calling_Cards_create| calling_cards_create]] – create Calling Cards.
* [[MOR_API_Calling_Card_update| calling_card_update]] – update Calling Card.
* [[MOR_API_Calling_Cards_get| calling_cards_get]] - get Calling Cards.
* [[MOR_API_Card_Group_create| cc_group_create]] – create Card Group.
* [[MOR_API_Card_Group_update| cc_group_update]] – update Card Group.
* [[MOR API Card Groups get| cc_groups_get]] – show Calling Cards Group info.
<br>


==Calls==
==Calls==
* [[MOR API user calls get|user_calls_get]] (user_calls) – retrieves a list of calls in a selected time period for a user/device.
* [[MOR API local calls get|local_calls_get]] - retrieves a list of local calls in a selected time period for a user.
* [[MOR_API_active_calls_get|active_calls_get]] - Retrieves list of active calls for specified User.


* [[MOR API user_calls|user_calls]] - retrieves a list of calls in a selected time period for a user/device.
<br>


==Balance==
==Conflines==
* [[MOR API conflines update|conflines_update]] – changes settings for API, Default User or Default Device.


* [[MOR API balance|balance]] - retrieves a user balance.
<br>
* [[Balance in phone | simple_balance]] - gets user's balance
==Credit notes==
* [[Change user balance | change_user_balance]] - change user's balance
* [[MOR API credit_notes_get| credit_notes_get]] (credit_notes) – credit notes list.
* [[MOR API credit_note_update| credit_note_update]] – credit note update.
* [[MOR API credit_notes_create| credit_note_create]] – credit note create.
* [[MOR API credit_notes_delete| credit_note_delete]] – credit note delete.


==Rates==
<br>
 
==Currencies==
* [[MOR API rate|rate]] - check user rate by prefix
* [[MOR_API_Exchange_rate_update|exchange_rate_update]] - Currency Exchange rate update.
* [[MOR API get_tariff| get_tariff]] - get all tariff's rates
* [[MOR API import_xml_retail_tariff_api| import_tariff_retail]] - import xml retail tariff
* [[MOR API update_or_create_wholesale_tariff| wholesale_tariff]] - update or create wholesale tariff


<br>
==Device==
==Device==


* [[MOR API create_device_api| device_create]] – create device
* [[MOR API device create| device_create]] – create device
* [[MOR API delete_device_api| delete_device]] – delete device
* [[MOR_API_device_update | device_update]]  –  update device settings.
* [[MOR API device list api | device_list]] – users device list
* [[MOR API device delete| device_delete]] (delete_device) – delete device
* [[MOR API CLI info get | cli_info_get]] – shows id of device where CLI belongs.
* [[MOR API devices get | devices_get]] (device_list) – users device list
* [[MOR API device details get | device_details_get]] – shows all information about specified device.
<br>
* [[MOR API device callflow get| device_callflow_get]] - returns information about specified device callflow state.
* [[MOR API device callflow update | device_callflow_update]] – updates information of specified device callflow state.
<br>
* [[MOR API CLI info get | cli_info_get]] (cli_get_info) – shows id of device where CLI belongs.
* [[MOR API CLI delete | cli_delete]] – deletes specified CLI.
* [[MOR API CLI add | cli_add]] – creates CLI and assigns it to the specified device.
* [[MOR API device clis get | device_clis_get]] – CLIs list by User and/or Device
<br>
* [[MOR API device rules get | device_rules_get]] – show Device Rules.
* [[MOR API device rule delete | device_rule_delete]] – delete Device Rule.
* [[MOR API device rule create | device_rule_create]] – create Device Rule.
<br>


==DID==
==DID==


* [[MOR API did_create_api| did_create]] - DID create
* [[MOR API dids get| dids_get]] – get list of particular DIDs
* [[MOR_API_did_assign_device_api| did_assign_device]] - Assign Device to DID
* [[MOR API did_create| did_create]] DID create
* [[MOR_API_did_unassign_device_api| did_unassign_device]] - Unassign Device from DID
* [[MOR_API_did_device_assign| did_device_assign]] (did_assign_device) – Assign Device to DID
* [[MOR_API_did_trunk_device_assign| did_trunk_device_assign]] (did_trunk_device_assign) – Assign Trunk Device to DID
* [[MOR_API_did_device_unassign| did_device_unassign]] (did_unassign_device) – Unassign Device from DID
* [[MOR_API_did_details_update| did_details_update]] (did_details_update) – Update DID details
* [[MOR API did subscription stop|did_subscription_stop]] – STOP DID subscription
* [[MOR API did terminate|did_terminate]] – DID terminate
* [[MOR API did make free|did_make_free]] – DID make free
* [[MOR API did rates update|did_rates_update]] – Update DID rates
* [[MOR API did rates get|did_rates_get]] – Get DID rates
* [[MOR API did close|did_close]] – close the DID
* [[MOR API did delete|did_delete]] – delete the DID
* [[MOR API did rates details get|did_rates_details_get]] – Get DID rates details
* [[MOR API did rates details update|did_rates_details_update]] – Update DID rates details
 
 
<br>
 
==Email==
* [[MOR API email send| email_send]] (send_email) – send Email.
 
<br>
==Financial statements==
* [[MOR API financial_statements_get| financial_statements_get]] (financial_statements) – financial statements list.
 
<br>
==Invoices==
* [[MOR API invoices_get|invoices_get]] (invoices) – retrieves a list of invoices in a selected time period.
* [[MOR_API_invoice_update|invoice_update]] - update Invoice
 
<br>
==IVR==
* [[MOR_API_ivr_dial_plan_update|ivr_dial_plan_update]] (invoices) – Updates IVR dial plan.
* [[MOR_API_ivr_time_period_update|ivr_time_period_update]] (invoices) – Updates IVR time period.
 
<br>
==LCR==
* [[MOR API lcrs_get|lcrs_get]] - retrieves list of LCRs.
* [[MOR API lcr_create|lcr_create]] - creates LCR
* [[MOR API lcr_update|lcr_update]] - updates LCR
* [[MOR API lcr_delete|lcr_delete]] - updates LCR
* [[MOR API lcr_add_provider|lcr_add_provider]] - adds provider to LCR
* [[MOR API lcr_delete_provider|lcr_delete_provider]] - deletes provider from LCR
 
<br>
 
==Location Rules==
* [[MOR API location_rule_create|location_rule_create]] – creates location rule.
* [[MOR API location_rule_update|location_rule_update]] – updates location rule.
* [[MOR API location_rules_get|location_rules_get]] – retrieves location rules.
* [[MOR API location_rule_get|location_rule_get]] – retrieves location rule information.
* [[MOR API location_rule_copy|location_rule_copy]] – copies rule from one location to other one.
* [[MOR API location_rule_delete|location_rule_delete]] – delete location rule.
 
<br>
 
==Login==
* [[MOR API user_login|user_login]] (login) – logs user in to MOR.
* [[MOR API user_logout|user_logout]] (logout) – logs user out from MOR.


<br>
==Monitorings==
==Monitorings==
* [[MOR API ma_activate_api| ma_activate]] – turn on monitorings addon
<br>
==Number Pools==
* [[MOR API number_pools_get| number_pools_get]] – get Number Pools list
* [[MOR API number_pool_create| number_pool_create]] – create Number Pools
* [[MOR API number pool update| number_pool_update]] – update Number Pool
* [[MOR API number pool delete| number_pool_delete]] – delete Number Pool
* [[MOR API number pool numbers create| number_pool_numbers_create]] – create numbers for Number Pool
* [[MOR API number pool numbers delete| number_pool_numbers_delete]] – delete numbers from Number Pool
<br>


* [[MOR API ma_activate_api| ma_activate]] - turn on monitorings addon
==Payments==
* [[MOR API payment_create| payment_create]] (create_payment) – create payment.
* [[MOR API payments_get| payments_get]] (payments_list) – payments list.


<br>
==PBX Pool==
* [[MOR API pbx_pool_create| pbx_pool_create]] – PBX Pool create.
<br>
==Phonebooks==
==Phonebooks==
* [[MOR API phonebooks_get| phonebooks_get]] (phonebooks_api ) – phonebooks list.
* [[MOR API phonebook_edit| phonebook_edit]] (phonebook_edit_api) – edit phonebook.
* [[MOR API phonebook_record_create| phonebook_record_create]]  – create phonebook.
<br>
==Providers==
* [[MOR API providers get| providers_get]]  – getting list of providers.
* [[MOR API provider create| provider_create]]  – create provider.
* [[MOR API provider update| provider_update]]  – update provider.
* [[MOR API provider delete| provider_delete]]  – delete provider.
<br>
=== Provider Rules===
* [[MOR_API_provider_rules_get| provider_rules_get]] - shows provider rules
* [[MOR_API_provider_rule_delete| provider_rules_delete]] - deletes provider rules
* [[MOR_API_provider_rule_create| provider_rules_create]] - creates provider rules
<br>
==Queue==
* [[MOR API queue log get| queue_log_get]]  – getting MOR queue log.
<br>
==Quickforwards==
* [[MOR API Quickforwards get| quickforwards_dids_get]] (quickforwards_dids_get) – get Quickforwards.
* [[MOR API Quickforwards update| quickforwards_did_update]] (quickforwards_did_update) – update Quickforwards.
* [[MOR API Quickforwards delete| quickforwards_did_delete]] (quickforwards_did_delete) – delete Quickforwards.
<br>
==Rates==
* [[MOR API rate get|rate_get]] (rate) – check user rate by prefix
* [[MOR API tariff rates get| tariff_rates_get]] (get_tariff) – get all tariff's rates
* [[MOR API tariff_retail_import | tariff_retail_import ]] (import_relail_tariff) – import xml retail tariff
* [[MOR API tariff_wholesale_update | tariff_wholesale_update ]] (wholesale_tariff) – update or create wholesale tariff
* [[MOR API tariffs_get|tariffs_get]] - retrieve list of tariffs


* [[MOR API phonebooks_api| phonebooks_api]] - phonebooks list.
<br>
* [[MOR API phonebook_edit_api| phonebook_edit_api]] - edit phonebook.


==Payments list==
==Recordings==
* [[MOR API recordings get| recordings_get]] – get MOR recordings.
* [[MOR API recording update| recording_update]] -  update comment for a specific recording.
* [[MOR API recordings delete | recordings_delete]] - delete recordings based on search parameters.


* [[MOR API payments_list_api| payments_list]] - payments list.
<br>
== Resellers ==
* [[MOR API reseller group create|reseller_group_create]] - create new Reseller Group
* [[MOR API reseller_groups_get|reseller_groups_get]] - retrieve Reseller Groups


==Credit notes==
<br>
==Services==
* [[MOR API Service create| service_create]] – create Service.
* [[MOR API Service delete| service_delete]] – delete Service.
* [[MOR API Services get| services_get]] – get Services.
* [[MOR API Service update| service_update]] – update Service.


* [[MOR API credit_notes_list_api| credit_notes]] - credit notes list.
<br>
* [[MOR API credit_note_update_api| credit_note_update]] - credit note update.
* [[MOR API credit_notes_create_api| credit_note_create]] - credit note create.
* [[MOR API credit_notes_delete_api| credit_note_delete]] - credit note delete.


==Financial statements==
==SMS==
NOTE: SMS addon is need to have these APIs (SMS add-on is no longer supported, new functionality will not be developed)
* [[MOR API sms send| sms_send]] (send_sms) – send SMS.
* [[MOR_API_user_sms_service_subscribe | user_sms_service_subscribe ]] – User subscription to SMS Service.
* [[MOR_API_user_sms_get | user_sms_get ]] – Retrieves a list of SMS in a selected time period for a user/device.


* [[MOR API financial_statements_list_api| financial_statements]] - financial statements list.
<br>


==Payments==
==Spy==
* [[MOR API spy_call | spy_call]] – Initiates a spy call.


* [[MOR API payments_api| create_payment]] - create payment.
<br>


==Calling cards==
==Statistics==
* [[MOR API quickstats_get | quickstats_get]] – gets today's [[Quick Stats]] and [[Active Calls]] count


* [[MOR API cc_by_cli| cc_by_cli]] - creates and updates calling cards, including adding and transferring funds, by being identified according the Caller_ID.
<br>
* [[MOR API buy_card_from_callingroup| buy_card_from_callingroup]] - sells cards from calling card group.
* [[MOR API show_calling_card_group| show_calling_card_group]] - show calling group info.


==MOR version==
<br>
* [[MOR API get_version| get_version]] - get MOR version number.
==Subscriptions==
* [[MOR API subscription delete|subscription_delete]] - Subscription delete.
* [[MOR API Subscriptions get|subscriptions_get]] - Subscriptions get.
* [[MOR API subscription create|subscription_create]] - Subscription create.
* [[MOR API subscription create bulk|subscription_create_bulk]] - Bulk Subscription create.
* [[MOR API subscription update|subscription_update]] - Subscription update.
* [[MOR API Subscription Flat Rate Number Status Get| subscription_flat_rate_number_status_get]] -  check prefix covering flat-rate subscriptions
<br>
 
==User==


==SMS Send==
* [[MOR API user_register| user_register]] – create new user from params.
* [[MOR API sms send| sms_send]] - send SMS.
* [[MOR API user_details_get | user_details_get]] (user_details) – gets user details.
* [[MOR API user_details_raw_get | user_details_raw_get]] (user_raw_details) – gets user raw details from database.
* [[MOR_API_user_details_update| user_details_update]] (user_update_api) – update user from params.
* [[MOR API users_get| users_get]] - get user list
* [[MOR API user_delete| user_delete]] - deletes user
<br>


==Send Email==
==Version==
* [[MOR API send_email_api| send_email]] - send Email.
* [[MOR API system version get| system_version_get]] (get_version) – get MOR version number.


<br>
<br>


==Vouchers==
* [[MOR API voucher use| voucher_use]] – use selected voucher.
<br>
= Examples =
= Examples =
* [[MOR API PHP Examples]]
* [[MOR API PHP Examples]]


<br><br><br><br>
<br><br>
 
=HTML POST=
=HTML POST=
All requests are in a similar format:
All requests are in a similar format:


Line 127: Line 314:
* username - the user name and password of the user who is asking for the data.  
* username - the user name and password of the user who is asking for the data.  


If the user has 'admin' rights, he will get more results and can perform more actions compared to a user who does not have such rights.
If the user has 'admin' rights, he will get more results and can perform more actions compared to a user who does not have such rights.
<br><br>
<br><br>
=Useful to know=


* All API methods return data straight from the database. It means that MOR GUI settings do not affect data, it will be returned as it is saved in the database. For example:
** Value of money will be returned in Default System [[Currencies|Currency]].
** Date will not be affected by [[Configuration_from_GUI#Visual| Default date format]] setting.
** Value of money will not be affected by [[Configuration_from_GUI#Visual|Number digits]] setting.
<br><br>
=See also =
=See also =
* [[API Configuration]]
* [[API Configuration]]
* [[MOR integration]]
* [[MOR integration]]
* [[How to block access to some API functions]]
* [[How to block access to some API functions]]
* [[API specification to be implemented in the future]]

Latest revision as of 07:31, 22 January 2024

"warning"IMPORTANT!!! API methods described here are for newest MOR version. For previous versions please check appropriate manual.

"api"



About

MOR API lets other software interact with MOR without knowing the internal structure of the database (DB) and other logic.

MOR accepts requests by HTML POST and returns results in XML.



MOR users that are allowed to use MOR API

  • Admin
  • Reseller
  • Accountant - only by using Admin Hash and Secret key
  • Simple User



Functions

API Related


Aggregate


Autodialer


Balance

Various methods to retrieve User balance


Callback

NOTE: A Callback addon is needed. Does not work on a limited version.


Calling Cards


Calls

  • user_calls_get (user_calls) – retrieves a list of calls in a selected time period for a user/device.
  • local_calls_get - retrieves a list of local calls in a selected time period for a user.
  • active_calls_get - Retrieves list of active calls for specified User.


Conflines


Credit notes


Currencies


Device





DID



Email


Financial statements


Invoices


IVR


LCR


Location Rules


Login


Monitorings


Number Pools


Payments


PBX Pool


Phonebooks


Providers


Provider Rules


Queue


Quickforwards


Rates


Recordings


Resellers


Services


SMS

NOTE: SMS addon is need to have these APIs (SMS add-on is no longer supported, new functionality will not be developed)


Spy


Statistics



Subscriptions


User


Version


Vouchers


Examples



HTML POST

All requests are in a similar format:

HTML POST: http://<SERVER_IP>/billing/api/<function>?u=username
  • username - the user name and password of the user who is asking for the data.

If the user has 'admin' rights, he will get more results and can perform more actions compared to a user who does not have such rights.

Useful to know

  • All API methods return data straight from the database. It means that MOR GUI settings do not affect data, it will be returned as it is saved in the database. For example:



See also