The Cloutiltiy software solution is developed with an API-first approach.
An API (Application Programming Interface) is a set of rules and protocols for building and interacting with software applications. It specifies how software components should communicate with each other and allows different components to access and manipulate data and functionality from other components.
API-first architecture is a software development approach in which the API is designed and developed first, before the actual implementation of the application or system. This means that the API is treated as the primary focus of the development process, and the application or system is built around it.
The main benefits of using an API-first approach are:
- Better design: By designing the API first, developers can focus on the interface and the interactions between different components, rather than getting bogged down in the implementation details of the application or system. This can lead to a better-designed API that is easier to use and understand.
- Improved collaboration: By designing the API first, different teams can work on different parts of the application or system concurrently, rather than having to wait for other teams to complete their work. This can improve collaboration and speed up development.
- Increased flexibility: An API-first approach allows developers to build applications or systems that can be easily integrated with other systems and APIs. This increases the flexibility of the application or system and makes it easier to connect to other systems or applications.
- Easier testing: By designing the API first, developers can create test cases and mock data early in the development process, which makes it easier to test the API and identify any issues before the application or system is built.
Overall, the API-first architecture is a useful approach for developing APIs and building web-based systems that need to be flexible, scalable, and easy to integrate with other systems.
The value of this approach for our Cloutility clients is the ability to integrate data and functionality from Cloutility with any other applications and systems implemented in the clients organizations.
REST design architecture
REST (Representational State Transfer) is a design architecture for web services. REST API is a type of API that follows the REST architecture.
REST APIs are designed to be lightweight, easy to use, and easy to understand. They use HTTP methods (such as GET, POST, PUT, and DELETE) to perform actions on resources that are identified using a URI (Uniform Resource Identifier). REST APIs use a simple, standard set of HTTP methods to perform actions on resources, and they use HTTP status codes to indicate the success or failure of those actions.
REST APIs are often used to create web services that can be consumed by other systems or applications. They are commonly used to expose data and functionality from servers, databases, and other systems, and to allow different systems to interact with each other.
REST APIs are widely used in modern web development and are an important part of building and integrating web-based systems.
Use-cases of the Cloutility REST API
All features and data available in the Cloutility web-portal UI can be accessed through the built-in (extensive) REST-based application programming interface (REST API). Accordingly, our clients use the API for integration with their external applications (e.g. ERP, BI, web, user portals, billing systems, support desk etc.)
Here are some use-cases for the REST API of Cloutility:
- Billing automation. A number of our clients use the built-in recurring billing system in Cloutility to generate an automated monthly billing foundation. By setting up subscriptions with different pricing schemes in Cloutility and activating the matching subscriptions in contracts for each customer Cloutility now adds all the billing lines for each customer in a CSV or JSON format based on the actual consumption of each customer (number of backups, transferred data, number of GBs, and more). To fully automate the billing process the billing lines can be retrieved by the invoicing systems of the clients directly through the REST API.
- User log documentation. A built-in user log in Cloutility records all committing actions performed by privileged self-service users. It is typically used to track user activity and identify potential security issues or problems with the system. The user log includes the time and date of the event, the user's username or identification, and a description of the action or event that occurred. The user logs are stored in Cloutility and accessible for privileged Cloutility administrators for review and analysis. In some cases the logs are retrieved through the Cloutility REST API to be integrated in global log systems of our clients.
- Integration with other portals. Most organizations have more than one portal to store different data and to access different systems. The Cloutility REST API makes it possible to integrate multiple portals. For example the API can be used to add a new customer in Cloutility when the customer is added in another portal and vice versa used to adding a customer in another portal when the customer is added in Cloutility.
- Integration with alerting systems. The hourly and/or daily backup alerts which are generated in Cloutility can be retrieved through the API and entered into global alerting systems to have a single point of alerts across different systems and platforms.
The possibilities and use-cases are endless. It is highly advisable to choose API-based technology to allow your different systems or applications to communicate and exchange data with each other.
You can find documentation of the extensive Cloutility REST API here: