@mia-platform/console-client
v0.4.2
Published
> [!IMPORTANT] > Console Client Package is experimental, it may be subject to breaking changes and features only a minimal subset of APIs > > Beware this package is currently only bundled as **ES Module**, consider this before using it.
Downloads
497
Keywords
Readme
Console-client
[!IMPORTANT]
Console Client Package is experimental, it may be subject to breaking changes and features only a minimal subset of APIsBeware this package is currently only bundled as ES Module, consider this before using it.
What is the console-client?
Console-client is the Mia-Platform client library for interacting with the Console APIs.
This library aims to help you easily interact with Console exposed APIs from your js
/ts
application through a fluent API notation.
How does this library work?
Console client library is autogenerated from the OpenAPI Specification (OAS) of the Console APIs. The tool that makes this possible under the hood is Kiota.
The following flow describes how the console-client is generated.
stateDiagram
%% direction LR
state "Console is deployed with new set of APIs" as deploy
state "OpenAPI Spec v3.0 file is exported from the Console" as console
state "Kiota takes in OAS and generates fluent API based client" as kiota
state "New version of console-client is built from the kiota one" as client
[*] --> deploy
deploy --> console
console --> kiota
kiota --> client
client --> [*]
How to auto generate the client?
To generate the client you just need kiota and an OAS file either json
or yaml
will work.
[!NOTE] Currently kiota only supports OAS up to v3.0 thus ensure to export the correct version before proceeding.
There are several ways to get kiota, pick your favorite from the official documentation.
Once installed kiota, you shall just execute:
kiota generate -l <language> -d <path-to-oas-file> -o <output-path-for-the-generated-client> -c <name-of-the-client-to-generate>
E.g.
kiota generate -l typescript -d ./oas-schema/console-apis-schema.json -o ./src/kiota-client/ -c ConsoleClient
That's it, now you have your client generated!
Which APIs are exposed from the console-client?
Console has a lot of APIs to communicate with all the underneath services but only a subset of these are considered stable enough to be exposed on the OAS generated from the API Portal.
Even though all of these are considered stable and breaking changes cannot be made by design, just a subset of these are exposed from the console-client.
For the moment only domain-centered APIs will be put in the console-client.
For this reason it's not currently possible to generate the client in a fully-automated way. A manual step is required in order to filter just the correct API set from the exported OpenAPI Spec file.