M4 API
From Kolmisoft Wiki
Jump to navigationJump to search
About
M4 API lets other software interact with M4 without knowing the internal structure of the database (DB) and other logic.
M4 accepts requests by HTML POST and returns results in XML.
M4 users that are allowed to use M4 API
- Admin
- Manager - only by using Admin Hash and Secret key
- Simple User
Functions
API Related
- M4 API Configuration – configuration options for API.
- Hash construction – how to construct hash to authenticate data over API.
Balance
- user_balance_update (change_user_balance) – changes User's Balance
Various methods to retrieve User balance
- user_balance_get (balance) – retrieves the User's Balance.
- user_simple_balance_get (simple_balance) – retrieves the User's Balance in plain text (without any tags).
Calls
- user_calls_get (user_calls) – retrieves a list of calls in a selected time period for a user/device.
Currencies
- exchange_rate_update - Currency Exchange rate update.
Device / Connection Point
- devices_get (device_list) – users device list
- device_details_get – shows all information about specified device.
- cp_create - creates a connection point
- cp_update - updates a connection point
- cp_delete - deletes a connection point
Number Pools
- number_pools_get – get Number Pools list
- number_pool_create – create Number Pools
- number_pool_update – update Number Pool
- number_pool_delete – delete Number Pool
- number_pool_numbers_create – create numbers for Number Pool
- number_pool_numbers_delete – delete numbers from Number Pool
Login
- user_login (login) – logs user in to M4.
- user_logout (logout) – logs user out from M4.
Payments
- payment_create (create_payment) – create payment.
- payments_get (payments_list) – payments list.
Rates
- tariff_rates_get (get_tariff) – get all tariff's rates
- tariff_wholesale_update (wholesale_tariff) – update or create wholesale tariff
Statistics
- quickstats_get – gets today's Quick Stats and Active Calls count
- aggregates_get - get aggregated statistics
User
- user_create - creates user.
- user_details_get (user_details) – gets user details.
- user_delete - deletes user.
- users_get - get user list.
- user_details_raw_get - get raw details of the User from the DB.
- user_details_update - update User's details
HTML POST
All requests are in a similar format:
HTML POST: http://<SERVER_IP>/billing/api/<function>?u=username
- username - the username 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 M4 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 Currency.
- Date will not be affected of Default date format setting.
- Value of money will not be affected of Number digits setting.