| Crates.io | vtiger-client |
| lib.rs | vtiger-client |
| version | 0.2.3 |
| created_at | 2025-07-19 21:44:12.830313+00 |
| updated_at | 2025-09-05 11:29:05.06549+00 |
| description | A Rust client library for the Vtiger CRM REST API |
| homepage | https://github.com/cjcox17/vtiger-client |
| repository | https://github.com/cjcox17/vtiger-client |
| max_upload_size | |
| id | 1760552 |
| size | 97,811 |
A modern, async Rust client library for the Vtiger CRM REST API.
[!IMPORTANT] This is a work in progress, it only has basic functionality for:
- User information retrieval (/me)
- Module description (/describe)
- Record querying (/query)
- Record creation (/create)
- Nice exporting!
Add this to your Cargo.toml:
[dependencies]
vtiger-client = "0.1"
tokio = { version = "1.46.1", features = ["full"] }
reqwest = { version = "0.12.22", features = ["json", "rustls-tls"] }
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0.140"
csv = "1.3.1"
futures = "0.3.31"
use vtiger_client::Vtiger;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let vtiger = Vtiger::new(
"https://your-instance.vtiger.com",
"your_username",
"your_access_key"
);
// Get user info
let user_info = vtiger.me().await?;
println!("User: {:?}", user_info);
// Query records
let leads = vtiger.query("SELECT * FROM Leads LIMIT 10").await?;
println!("Leads: {:?}", leads);
Ok(())
}
Get your access key from Vtiger:
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.