Akwatype is a Data Flow First platform, which puts data and flow modeling at the heart of API and event design.
with Akwatype :
- You model your exchange data model, your data flows and your services
- We compile and index your models in real time
-
You graphically explore your models and generate OpenAPI, AsyncAPI description
Akwatype Project
Akwatype Project is a self-service SaaS platform to try Akwatype, Akwatype Light plan is free forever, just register and use it
If you would like to explore Akwatype further, contact us to have access to a more advanced plan for few weeks.
A version of Akwatype for enterprise is available in SaaS and On Premise.
Contact us for more information
Features offered by the platform
To start using Akwatype, go to get started for more detailed information on how to use the features.
Modeling
Akwatype has a powerful declarative language to model types, facades and services.
This language is fully supported by a highly responsive editor with completion, real-time compilation and error detection.
Akwtatype constantly monitors your models consistency.
Exploration
The explorations of the models are mainly graphical.
- Data graphs
- Services cooperation
- Graphs centered on a service, a message, a topic ...
- Sequence diagram
- ...
From the exploration parameters that you indicate (objects to explore, level of exploration depth, type of graph...) the graphs are generated automatically.
This approach makes it possible to have representations that are always up to date.
Contextual menus on the objects represented in the graphics (facade, service, route, message...) allow to navigate between the different representations or to the source code of the object.
Some examples of akwatype graphics exploration
Data explorer
Interactive graph allowing to explore the data model with different types of representations and selections, filters, exploration depth levels...
Flow explorer
Akwatype graphs are interactive in the sense that each node has a contextual menu allowing, for example, to navigate to other representations from the selected node, to visualize the graphical representation of associated data or to jump in the code where it is described.
note: by convention, synchronous flows (APIs) appear in red in the graphs while asynchronous flows (messages) appear in blue.
Service cooperation
Automatic synthesis graph of the relations between services
Service focus
Interactive graph to visualize the interactions of one service with all the others
Messages and Topics focus
Interactive graph to visualize which services send and receive which messages, and by which topic or queue
Sequence diagram
See all the cascading service calls triggered by the activation of one or more route or/and the receipt of one or more messages on a service
Export
Akwatype allows you to export platform descriptions including
- Generation of descriptions in OpenAPI format (API)
- Generation of descriptions in AsyncAPI format (Events/Messages)
- Export of models in SVG and Excel format
- Examples in JSON format
- Structure of a facade
OpenAPI example :
Data examples
Having functionally consistent data examples is essential to validate the content of the flows and to be able to generate meaningful Mocks (API simulations).
The description of data examples on the business model (type), associated with facades and Akwatype xAdapt automatic data transformation engine, allows not only to describe examples in a very efficient way, but also to reuse these examples in many contexts of use without having to define new ones.
With this approach you can actually have examples everywhere (routes, messages) without incurring prohibitive costs to define and maintain these examples.
Custom properties, Nomenclatures, tags
Properties and custom properties
Akwatype natively supports the main properties needed to generate OpenAPI descriptions (description, example, min, max, regex, ...). These standard properties can be completed by custom properties, allowing you to associate your own metadata to the model.
Nomenclatures
In a data model, some entities are nomenclatures. Nomenclatures are reference data, relatively stable in time, which allow to codify the value of certain fields. For example countries, departments, skills, risk levels on customers...
Akwatype allows to declare these nomenclatures and to indicate which nomenclature is associated to which fields. Akwatype also allows to create simplified data graphs by hiding all nomenclatures to show only the types/facades that are really significant from a business point of view.
Tags
In addition to custom properties, akwatype allows to associate tags to types and type fields. These tags can be displayed directly in the data model. The very interesting feature of the tags associated with the fields is their ability to automatically propagate in the facade structure
This mechanism allows to detect the exposure of sensitive data (e.g. GDPR, financial, ...) on the facades exposed by the services.
Security
Akwatype supports OAS 3.0 security schemes descriptions (HTTP, API keys, Oauth 2, OpenID) and security requirements.
Transformations with Akwatype xAdapt engine
Akwatype allows to see the result of the transformation of a facade, to its original type or to another facade defined on the same type, from a Json example.
Versioning
Akwatype has native integration with Git repositories (Github, Gitlab, ...)
It allows you to version your models in your Git repository,
but also to define a dedicated Git to integrate the generation of
your OpenAPI and AsyncAPI descriptions with your CI/CD.
All previous models are still available for full explorations and extractions
Akwatype allows to visualize a summary delta between two versions :
Model modularization and packages
Akwatype packages allow to import models into other models.
This approach makes it possible to modularize the descriptions and to be able to evolve the versions of certain parts of a model independently of each other.
Of course, Akwatype recursively searches and imports all dependencies of the imported packages.
User roles
Akwatype allows a multi-user use of the models.
Roles are assigned to users, to authorize them or not to modify certain parts of a model.
Of course, a user can have different roles on different models.
Glossaries
In its Enterprise version, Akwatype allows you to define multilingual glossaries whose terms can be directly associated with type fields.
This association allows :
- To have a business definition for the fields of the model
- To find out how the terms are used
Akwatype has powerful Excel import/export features for glossaries to work with your existing glossaries. It also allows to extract these glossaries in PDF format for communication purpose.
Some of the features described may or may not be available depending on the active plan. Please refer to the Home page of the application for more information.