Crates.io | skyscanner |
lib.rs | skyscanner |
version | 0.1.0 |
source | src |
created_at | 2023-08-06 14:41:45.2328 |
updated_at | 2023-08-06 14:41:45.2328 |
description | implementation of the Skyscanner Flights live pricing API (3.0) |
homepage | https://github.com/valyagolev/skyscanner |
repository | https://github.com/valyagolev/skyscanner |
max_upload_size | |
id | 937208 |
size | 21,895 |
Currently, implementation of the Skyscanner Flights live pricing API (3.0).
Bare-bones, but mostly well-typed. Useful for me. Feel free to contribute/fork/ask for things.
Almost no docs, but simple to use:
set SKYSCANNER_API_KEY
env var
let req = CreateRequest {
query_legs: vec![QueryLeg {
origin_place_id: "LAX".into(),
destination_place_id: "BER".into(),
date: Local::now().date_naive() + Duration::days(2),
}],
..Default::default()
};
let mut str = pin!(stream_search(req));
while let Some(resp) = str.next().await {
let content = resp.unwrap();
for itin in content.sorted(resp::LiveSortingOption::Cheapest).take(5) {
println!("{}", content.format_itinerary(&itin));
}
println!("====more?...");
}