2 unstable releases

0.2.0 Jan 27, 2020
0.1.0 Jan 27, 2020

#58 in #rest-client

MIT license

16KB
172 lines

viacep-rs

The ViaCEP client wrapper written in Rust

Service Status
AppveyorCI Build status
crates.io crates.io

Pure Rust bindings to the Holiday API.

Dependencies and support

viacep-rs is intended to work on all tier 1 supported Rust systems:

  • MacOSX
  • Linux
  • Windows

Minimum Compiler Version

Due to the use of certain features holiday-api-rust requires rustc version 1.18 or higher.

Getting Started

Add the following to your Cargo.toml

[dependencies]
viacep_rs = "0.2.0"
serde_json = "1.0"

Then in your lib.rs or main.rs file add:

extern crate viacep_rs;

let client = ViaCepClient::new();

// Single Zip Code data 
match client.get_zipcode("03177010") {
    Err(e) => eprintln!("{:?}", e),
    Ok(data) => {
        let cep = data.unwrap();
        println!("IBGE: {} | Address: {} | Neighborhood: {} | City: {} | UF: {}", cep.ibge, cep.Address, cep.Neighborhood, cep.City, cep.state_initials);
    }
}

//Find by address data
match client.search("SP", "Sâo Paulo", "Paulista") {
    Err(e) => eprintln!("{:?}", e),
    Ok(data) => {
        let addresses = data.unwrap();
        for address in addresses {
            println!("IBGE: {} | Address: {} | City: {} | Zip: {}", address.ibge, address.address, address.city, address.zip);
        }
    }
}

License

Licensed under

Dependencies

~16–26MB
~383K SLoC