| Crates.io | motis-openapi-progenitor |
| lib.rs | motis-openapi-progenitor |
| version | 0.3.0 |
| created_at | 2025-03-29 22:52:38.089672+00 |
| updated_at | 2025-09-20 22:39:00.062776+00 |
| description | API-wrapper around the motis api used for routing |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1611804 |
| size | 516,477 |
This API-client was automatically generated to support the motis v3 api. It was generated (mostly, some manual editing was done).
See https://github.com/oxidecomputer/progenitor for docs on the generator used
The following code can generate the client:
wget https://raw.githubusercontent.com/motis-project/motis/refs/heads/master/openapi.yaml
sed -i 's/openapi: 3.1.0/openapi: 3.0.0/' openapi.yaml
rm -fr src Cargo.*
cargo progenitor -i openapi.yaml -o motis-openapi-progenitor -n motis-openapi-progenitor -v 0.3.1 --interface builder
mv motis-openapi-progenitor/* .
rm -fr motis-openapi-progenitor
(
echo '#![forbid(unsafe_code)]'
echo '#![doc = include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/README.md"))]'
cat src/lib.rs
) > tmpfile
mv tmpfile src/lib.rs
rm openapi.yaml
To use it, you can use the Client as following
let res = motis_openapi_progenitor::Client::new("https://api.transitous.org").plan()
.from_place("de-DELFI_000010073203") // landshut süd trains station
.to_place("48.1371079,11.5753822,0") // munich coordinate at level 0
.detailed_transfers(false)
.send().await.unwrap();
println!("{res:?}");