use std::http::jsonClient fn main = jsonClient() # json client post 'http://localhost:1234/login', username: 'test', password: 'test' # Either -> || ( it.body.accessToken ) # Either |> println # IO () # Without operators fn main = jsonClient() post 'http://localhost:1234/login', username: 'test', password: 'test' map || ( it.body.accessToken ) fold println () # Better: main which returns IO (a Callable?) automatically calls the IO # Also, JsonClient can "login" using various methods, such as a Bearer token use std::http::{jsonClient, bearerToken} fn main = jsonClient( baseUrl: 'http:/localhost:1234', auth: bearerToken || ( post('/login', username: 'test', password: 'test') map || ( it.body.accessToken ) ) ) get '/greeting' map || ( it.body.greeting ) fold println