use std::collections::HashMap;
use crate::error::TombaError;
use crate::tomba::{Tomba, TombaResponse};
impl Tomba {
pub fn email_finder(
&self,
domain: &str,
first_name: &str,
last_name: &str,
webhook_url: Option<&str>,
) -> Result<TombaResponse, TombaError> {
let mut params = HashMap::new();
params.insert("domain".into(), domain.into());
params.insert("first_name".into(), first_name.into());
params.insert("last_name".into(), last_name.into());
if let Some(v) = webhook_url {
params.insert("webhook_url".into(), v.into());
}
self.call("GET", "email-finder", ¶ms)
}
pub fn author_finder(
&self,
url: &str,
webhook_url: Option<&str>,
) -> Result<TombaResponse, TombaError> {
let mut params = HashMap::new();
params.insert("url".into(), url.into());
if let Some(v) = webhook_url {
params.insert("webhook_url".into(), v.into());
}
self.call("GET", "author-finder", ¶ms)
}
pub fn linkedin_finder(
&self,
url: &str,
enrich_mobile: Option<bool>,
full: Option<bool>,
webhook_url: Option<&str>,
) -> Result<TombaResponse, TombaError> {
let mut params = HashMap::new();
params.insert("url".into(), url.into());
if let Some(v) = enrich_mobile {
params.insert("enrich_mobile".into(), v.to_string());
}
if let Some(v) = full {
params.insert("full".into(), v.to_string());
}
if let Some(v) = webhook_url {
params.insert("webhook_url".into(), v.into());
}
self.call("GET", "linkedin", ¶ms)
}
pub fn email_enrichment(
&self,
email: &str,
webhook_url: Option<&str>,
) -> Result<TombaResponse, TombaError> {
let mut params = HashMap::new();
params.insert("email".into(), email.into());
if let Some(v) = webhook_url {
params.insert("webhook_url".into(), v.into());
}
self.call("GET", "enrichment", ¶ms)
}
}