{"id":18338268,"url":"https://github.com/boavizta/boaviztapi-sdk-rust","last_synced_at":"2025-04-06T05:31:42.010Z","repository":{"id":60834527,"uuid":"540351324","full_name":"Boavizta/boaviztapi-sdk-rust","owner":"Boavizta","description":"✳ Rust client library for Boaviztapi.","archived":false,"fork":false,"pushed_at":"2024-12-11T13:35:30.000Z","size":148,"stargazers_count":3,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-06T01:27:24.319Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Boavizta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-23T08:40:08.000Z","updated_at":"2024-12-11T13:35:34.000Z","dependencies_parsed_at":"2022-10-05T13:17:35.185Z","dependency_job_id":"efd2b975-d9d8-4214-965d-5322e0ead1b6","html_url":"https://github.com/Boavizta/boaviztapi-sdk-rust","commit_stats":{"total_commits":27,"total_committers":3,"mean_commits":9.0,"dds":"0.14814814814814814","last_synced_commit":"b82f83a2246ff58e29f643ee04c407f8db1da9d0"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boavizta%2Fboaviztapi-sdk-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boavizta%2Fboaviztapi-sdk-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boavizta%2Fboaviztapi-sdk-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boavizta%2Fboaviztapi-sdk-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Boavizta","download_url":"https://codeload.github.com/Boavizta/boaviztapi-sdk-rust/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247440345,"owners_count":20939221,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-05T20:13:35.593Z","updated_at":"2025-04-06T05:31:42.002Z","avatar_url":"https://github.com/Boavizta.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# boaviztapi-sdk-rust\n\nRust client library for [Boaviztapi](https://github.com/Boavizta/boaviztapi).\n\n\u003e [!NOTE]\n\u003e The code of this library is _mostly_ generated automatically from the OpenAPI specification of Boavizta API.\n\u003e\n\u003e Still, some part are patched manually (See https://github.com/Boavizta/boaviztapi-sdk-rust/issues/6).\n\u003e\n\u003e This library is used and tested in the context of cloud scanner, so we know that API routes related to cloud work well. But it may still contain bugs for other non-cloud API routes.\n\u003e \n\u003e Please open an issue if you notice such behavior.\n\n## Versions supported\n\n- SDK version 1.3.3 supports Boavizta API 1.3.3\n- SDK version 1.3.0 supports Boavizta API 1.3\n- SDK version 1.2.0 supports Boavizta API 1.2.0\n- SDK version 1.1.0 supports Boavizta API 1.1.0\n- SDK version 1.0.1 supports Boavizta API 1.0.1 (and historical 0.3.x series)\n- SDK version 0.3.X supports Boavizta API of the 0.3.x series\n- 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)\n\n\n\n## Documentation\n\n- SDK documentation (crate) [boavizta_api_sdk - Rust](https://docs.rs/boavizta_api_sdk/latest/boavizta_api_sdk/)\n- Boavizta [API documentation](https://doc.api.boavizta.org/)\n\n## How to generate  the sdk for the latest version of  BoaviztaAPI\n\nSDK is generated from the published openAPI specification of Boaviztapi (\u003chttp://api.boavizta.org/openapi.json\u003e).\n\nWe 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](https://github.com/OpenAPITools/openapi-generator-cli) .\n\n```sh\n# Generate for public API\ndocker run --rm -v \"${PWD}:/local\" openapitools/openapi-generator-cli:v7.10.0 generate -i https://api.boavizta.org/openapi.json   -g rust  -o /local/ --package-name boavizta_api_sdk\n```\n\n```sh\n# Generate against a Local API (dev, using network host /!\\)\ndocker run --network=host --rm -v \"${PWD}:/local\" openapitools/openapi-generator-cli:v7.10.0 generate -i http://localhost:5000/openapi.json  -g rust  -o /local/ --package-name boavizta_api_sdk\n```\n\nThe generated code require some manual updates before being usable.\n\n## How to generate SDK for a specific version of API\n\nTo generate the SDK for a *specific* version of BoaviztaAPI (e.g.  a dev branch or unreleased version), you have to:\n\n1. retrieve the openapi.yml specification of the API\n2. run the generator against this file\n3. if needed publish the generated SDK wth an alpha version\n\n### Update the Cargo.toml before publishing the SDK\n\nMetadata of Cargo.toml are overwritten by generation.\n\n1. verify that version of package is consistent\n2. update it with the following values\n\n```toml\ndescription = \"A Rust client/sdk to access Boavizta API\"\nhomepage = \"https://boavizta.org\"\nrepository = \"https://github.com/Boavizta/boaviztapi-sdk-rust/\"\nreadme = \"README.md\"\nauthors = [\"boavizta.org\", \"olivier de Meringo\"]\nedition = \"2021\"\nlicense-file = \"LICENSE\"\n```\n\nEnsure that the dependency on `reqwest`  does not use native SSL(the default feature), but uses  `rust-tls` . It makes cross compiling so much easier.\n\n```toml\n[dependencies.reqwest]\nversion = \"^0.12\"\ndefault-features = false \nfeatures = [\"json\", \"multipart\", \"rustls-tls\"]\n```\n\n## How to publish the SDK\n\nThis is a manual action and should be done only by the maintainer of the SDK.\n\n```sh\ncargo login\ncargo publish --dry-run\ncargo publish\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboavizta%2Fboaviztapi-sdk-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboavizta%2Fboaviztapi-sdk-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboavizta%2Fboaviztapi-sdk-rust/lists"}