The Ubersmith API 2.0 is a RESTful web service for communicating with an Ubersmith DE software installation.
This document provides documentation on the commands and parameters available in the 2.0 release of the Ubersmith API.
The API is broken into several sections, each containing commands having related functions. The sections are:
- uber - Functions of a general nature
- client - Functions related to the management of clients, contacts, services, and invoices
- device - Functions related to the management of devices, monitors, and IP assignments
- order - Functions related to orders
- sales - Functions related to sales opportunities
- support - Functions related to support departments and tickets
Methods within each section are identified using a dot notation, e.g. uber.methods_list.
The Ubersmith API supports the use of API Tokens as well as passwords for authentication. The use of API Tokens allows generating separate tokens for each external system accessing the API, and optionally setting an expiration date for the token.
API Tokens can be managed from the User Management page in Setup & Admin, by clicking the 'api tokens' link which appears next to any user who has been granted API access. Once generated a token may be used in place of the user's password for API access.
Authentication details are passed to the Ubersmith API via HTTP authentication, if you are using our client class this is taken care of automatically.
Using the Ubersmith API
For supported languages we recommend using our client (see below); for integrating other languages the Ubersmith API uses standard HTTP requests and return data in JSON format.
The Ubersmith API is accessed through the URL https://billing.mycompany.com/api/2.0/, where 'billing.mycompany.com' is the address of your Ubersmith installation.
API methods are called by passing the parameter 'method' in the URL, like 'https://billing.mycompany.com/api/2.0/?method=uber.method_list', which will return a list of all the available API methods.
Additional parameters are passed to the API as either GET parameters or via standard HTTP POST requests.
Responses are returned in JSON format (with the exception of specialized methods which return raw PDF, Image, XML or HTML data), and include the standard elements:
- status - API call success true/false
- error_code - error code for failed API calls
- error_message - error message for failed API calls
- data - results of API call
A PHP API client class and example are included in the 'api/client/2.0/php' directory of the Ubersmith distribution:
The file 'class.uber_api_client.php' provides the PHP class 'uber_api_client', which can be used to interact with the Ubersmith API 2.0.
The file 'sample.php' provides an example of how to use the class to retrieve data from the API.
As other language implementations become available, the will be included in the 'api/client/2.0/' directory. If you have any questions about creating your own client class, or would like to contribute a client class you have written, please contact Ubersmith Support.