boaviztapi-sdk-rust
Rust client library for Boaviztapi.
Versions supported
- SDK version 1.3.3 supports Boavizta API 1.3.3
- SDK version 1.3.0 supports Boavizta API 1.3
- SDK version 1.2.0 supports Boavizta API 1.2.0
- SDK version 1.1.0 supports Boavizta API 1.1.0
- SDK version 1.0.1 supports Boavizta API 1.0.1 (and historical 0.3.x series)
- SDK version 0.3.X supports Boavizta API of the 0.3.x series
- SDK version 0.2.x support Boavizta API of the 0.2.x series (Neither SDK nor API will not be updated after release of Boavizta API v0.3.x - around June 2023)
Documentation
- SDK documentation (crate) boavizta_api_sdk - Rust
- Boavizta API documentation
How to generate the sdk for the latest version of BoaviztaAPI
SDK is generated from the published openAPI specification of Boaviztapi (http://api.boavizta.org/openapi.json).
We use openapi-generator-cli to generate the SDK. See GitHub - OpenAPITools/openapi-generator-cli: A node package wrapper for https://github.com/OpenAPITools/openapi-generator .
# Generate for public API
# Generate against a Local API (dev, using network host /!\)
The generated code require some manual updates before being usable.
How to generate SDK for a specific version of API
To generate the SDK for a specific version of BoaviztaAPI (e.g. a dev branch or unreleased version), you have to:
- retrieve the openapi.yml specification of the API
- run the generator against this file
- if needed publish the generated SDK wth an alpha version
Update the Cargo.toml before publishing the SDK
Metadata of Cargo.toml are overwritten by generation.
- verify that version of package is consistent
- update it with the following values
= "A Rust client/sdk to access Boavizta API"
= "https://boavizta.org"
= "https://github.com/Boavizta/boaviztapi-sdk-rust/"
= "README.md"
= ["boavizta.org", "olivier de Meringo"]
= "2021"
= "LICENSE"
Ensure that the dependency on reqwest does not use native SSL(the default feature), but uses rust-tls . It makes cross compiling so much easier.
[]
= "^0.12"
= false
= ["json", "multipart", "rustls-tls"]
How to publish the SDK
This is a manual action and should be done only by the maintainer of the SDK.