api-client-macro 0.1.1

Declaratively express a REST API client
Documentation
# Usage


A reqwest powered REST API client can be generated using `api_client_macro::generate!` provided the following syntax.

```rust
api_client_macro::generate!(ApiClient, {
    user {
        get_by_id: get "user/{id}" id: &str,
        delete_by_id: delete "user/{id}" id: &str,
        create: post "user",
        list: get "users"
    },
    contact {
        get_by_id: get "contact/{id}" id: &str,
        delete_by_id: delete "contact/{id}" id: &str,
        create: post "contact",
        list: get "contact"
    }
});
```

After compilation, the following code is available.

```rust
fn main() {
    let client = ApiClientBuilder::new("<api-base-url>", None);
    client.contact_create().body("<body>").send().unwrap();
    client.contact_get_by_id("<id>").send().unwrap();
    client.user_list().query(&[("email", "<email>")]).send().unwrap();
}
```