Documentation ¶
Index ¶
- Constants
- func UsingFirstLastName(firtsName, lastName string) emailSearchPersonOption
- func UsingFullName(fullName string) emailSearchPersonOption
- func WithCustomClient(client *http.Client) clientOption
- func WithDepartment(departments ...department) requestOptionalParam
- func WithEmailType(emailType emailType) requestOptionalParam
- func WithLimit(limit int) requestOptionalParam
- func WithOffset(offset int) requestOptionalParam
- func WithSeniority(levels ...seniorityLevel) requestOptionalParam
- type AccountInformationCalls
- type AccountInformationData
- type AccountInformationResponse
- type Client
- func (c *Client) AccountInformation(ctx context.Context) (*AccountInformationResponse, error)
- func (c *Client) DomainSearch(ctx context.Context, domain, companyName string, ...) (*DomainSearchResponse, error)
- func (c *Client) EmailCount(ctx context.Context, domain, companyName string, ...) (*EmailCountResponse, error)
- func (c *Client) FindEmail(ctx context.Context, domain, companyName string, ...) (*EmailFinderReponse, error)
- func (c *Client) VerifyEmail(ctx context.Context, email string) (*EmailVerifierResponse, error)
- type DomainSearchData
- type DomainSearchEmail
- type DomainSearchResponse
- type EmailCountData
- type EmailCountDepartment
- type EmailCountResponse
- type EmailCountSeniority
- type EmailFinderData
- type EmailFinderReponse
- type EmailSource
- type EmailVerifierData
- type EmailVerifierResponse
- type HunterError
- type HunterErrors
- type Meta
- type MetaParams
Constants ¶
const ( // SeniorityJunior is a junior seniority level SeniorityJunior seniorityLevel = "junior" // SeniorityExecutive is a executive seniority level SeniorityExecutive seniorityLevel = "executive" // SenioritySenior is a senior seniority level SenioritySenior seniorityLevel = "senior" // DepartmentExecutive is an executive department DepartmentExecutive department = "executive" // DepartmentIT is an it department DepartmentIT department = "it" // DepartmentFinance is a finance department DepartmentFinance department = "finance" // DepartmentManagement is a management department DepartmentManagement department = "management" // DepartmentSales is a sales department DepartmentSales department = "sales" // DepartmentLegal is a legal department DepartmentLegal department = "legal" // DepartmentSupport is a support department DepartmentSupport department = "support" // DepartmentHR is a hr department DepartmentHR department = "hr" // DepartmentMarketing is a marketing department DepartmentMarketing department = "marketing" // DepartmentCommunication is a communication department DepartmentCommunication department = "communication" // EmailTypePersonal is a personal emails of specific employees. EmailTypePersonal emailType = "personal" // EmailTypeGeneric is a generic email addresses. EmailTypeGeneric emailType = "generic" )
Variables ¶
This section is empty.
Functions ¶
func UsingFirstLastName ¶
func UsingFirstLastName(firtsName, lastName string) emailSearchPersonOption
UsingFirstLastName search hunter.io person using first and last name.
func UsingFullName ¶
func UsingFullName(fullName string) emailSearchPersonOption
UsingFullName search hunter.io person using full name separated with space.
func WithCustomClient ¶
WithCustomClient used in NewClient function. It allows use custom http.Client for method calls.
func WithDepartment ¶
func WithDepartment(departments ...department) requestOptionalParam
WithDepartment allows to get only email addresses for people working in the selected department(s). The possible values are executive, it, finance, management, sales, legal, support, hr, marketing or communication. Several departments can be selected (comma-delimited). Please pass exported const for this method as an arguments.
func WithEmailType ¶
func WithEmailType(emailType emailType) requestOptionalParam
WithEmailType allows to get only personal or generic email addresses. Please pass exported const for this method as an arguments.
func WithLimit ¶
func WithLimit(limit int) requestOptionalParam
WithLimit specifies the max number of email addresses to return. The default is 10.
func WithOffset ¶
func WithOffset(offset int) requestOptionalParam
WithOffset specifies the number of email addresses to skip. The default is 0.
func WithSeniority ¶
func WithSeniority(levels ...seniorityLevel) requestOptionalParam
WithSeniority allows to get only email addresses for people with the selected seniority level. The possible values are junior, senior or executive. Several seniority levels can be selected (delimited by a comma). Please pass exported const for this method as an arguments.
Types ¶
type AccountInformationCalls ¶
AccountInformationCalls contain information about used and available calls.
type AccountInformationData ¶
type AccountInformationData struct { FirstName string `json:"first_name"` LastName string `json:"last_name"` Email string `json:"email"` PlanName string `json:"plan_name"` PlanLevel int `json:"plan_level"` ResetDate string `json:"reset_date"` TeamID int `json:"team_id"` Calls AccountInformationCalls `json:"calls"` }
AccountInformationData contains account information data.
type AccountInformationResponse ¶
type AccountInformationResponse struct {
Data AccountInformationData `json:"data"`
}
AccountInformationResponse response from "account" method.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is an API client
func NewClient ¶
NewClient returns a pointer to a client To call API methods you must first create a client. You could use your custom http.Client using WithCustomClient option.
func (*Client) AccountInformation ¶
func (c *Client) AccountInformation(ctx context.Context) (*AccountInformationResponse, error)
AccountInformation implements "account" hunter.io method. For more information: https://hunter.io/api-documentation/v2#account
func (*Client) DomainSearch ¶
func (c *Client) DomainSearch(ctx context.Context, domain, companyName string, params ...requestOptionalParam) (*DomainSearchResponse, error)
DomainSearch implements "domain-search" hunter.io method. for "params" use exported functions that returns optionalParam type. You need to specify at least domain or companyName for this call. method docs: https://hunter.io/api-documentation/v2#domain-search
func (*Client) EmailCount ¶
func (c *Client) EmailCount(ctx context.Context, domain, companyName string, emailType requestOptionalParam) (*EmailCountResponse, error)
EmailCount implements "email-count" hunter.io method. You need to specify at least domain or companyName for this call. emailType is not required for this call, just pass nil if it doesn't needed! method docs: https://hunter.io/api-documentation/v2#email-count
func (*Client) FindEmail ¶
func (c *Client) FindEmail(ctx context.Context, domain, companyName string, withNameParam emailSearchPersonOption) (*EmailFinderReponse, error)
FindEmail implements "email-finder" hunter.io method. You need to specify at least domain or companyName for this call. method docs: https://hunter.io/api-documentation/v2#email-finder
func (*Client) VerifyEmail ¶
VerifyEmail implements email-verifier hunter.io method. method docs: https://hunter.io/api-documentation/v2#email-verifier
type DomainSearchData ¶
type DomainSearchData struct { Domain string `json:"domain"` Disposable bool `json:"disposable"` Webmail bool `json:"webmail"` AcceptAll bool `json:"accept_all"` Pattern string `json:"pattern"` Organization string `json:"organization"` Country string `json:"country"` State string `json:"state"` Emails []DomainSearchEmail `json:"emails"` }
DomainSearchData contains data from domain-search method response.
type DomainSearchEmail ¶
type DomainSearchEmail struct { Value string `json:"value"` Type string `json:"type"` Confidence int `json:"confidence"` Sources []EmailSource `json:"sources"` FirstName string `json:"first_name"` LastName string `json:"last_name"` Position string `json:"position"` Seniority string `json:"seniority"` Department string `json:"department"` Linkedin string `json:"linkedin"` Twitter string `json:"twitter"` PhoneNumber string `json:"phone_number"` }
DomainSearchEmail contains data about specific email.
type DomainSearchResponse ¶
type DomainSearchResponse struct { Data DomainSearchData `json:"data"` Meta Meta `json:"meta"` }
DomainSearchResponse is a response from domain-search method call.
type EmailCountData ¶
type EmailCountData struct { Total int `json:"total"` PersonalEmails int `json:"personal_emails"` GenericEmails int `json:"generic_emails"` Department EmailCountDepartment `json:"department"` Seniority EmailCountSeniority `json:"seniority"` }
EmailCountData contains data from email-count method response.
type EmailCountDepartment ¶
type EmailCountDepartment struct { Executive int `json:"executive"` It int `json:"it"` Finance int `json:"finance"` Management int `json:"management"` Sales int `json:"sales"` Legal int `json:"legal"` Support int `json:"support"` Hr int `json:"hr"` Marketing int `json:"marketing"` Communication int `json:"communication"` }
EmailCountDepartment contains information about how many mails of employees of each department are in hunter.io.
type EmailCountResponse ¶
type EmailCountResponse struct { Data EmailCountData `json:"data"` Meta Meta `json:"meta"` }
EmailCountResponse response from email-count method.
type EmailCountSeniority ¶
type EmailCountSeniority struct { Junior int `json:"junior"` Senior int `json:"senior"` Executive int `json:"executive"` }
EmailCountSeniority contains information about how many mails of each seniority level are in hunter.io.
type EmailFinderData ¶
type EmailFinderData struct { FirstName string `json:"first_name"` LastName string `json:"last_name"` Email string `json:"email"` Score int `json:"score"` Domain string `json:"domain"` AcceptAll bool `json:"accept_all"` Position string `json:"position"` Twitter string `json:"twitter"` LinkedinURL string `json:"linkedin_url"` PhoneNumber string `json:"phone_number"` Company string `json:"company"` Sources []EmailSource `json:"sources"` }
EmailFinderData contains data from email-finder method response
type EmailFinderReponse ¶
type EmailFinderReponse struct { EmailFinderData EmailFinderData `json:"data"` Meta Meta `json:"meta"` }
EmailFinderReponse is a response from email-verifier method call
type EmailSource ¶
type EmailSource struct { Domain string `json:"domain"` URI string `json:"uri"` ExtractedOn string `json:"extracted_on"` LastSeenOn string `json:"last_seen_on"` StillOnPage bool `json:"still_on_page"` }
EmailSource contains data about email source. It's common and embedded in some other structs.
type EmailVerifierData ¶
type EmailVerifierData struct { Result string `json:"result"` Score int `json:"score"` Email string `json:"email"` Regexp bool `json:"regexp"` Gibberish bool `json:"gibberish"` Disposable bool `json:"disposable"` Webmail bool `json:"webmail"` MxRecords bool `json:"mx_records"` SMTPServer bool `json:"smtp_server"` SMTPCheck bool `json:"smtp_check"` AcceptAll bool `json:"accept_all"` Block bool `json:"block"` Sources []EmailSource `json:"sources"` }
EmailVerifierData contains data from email-verifier method response.
type EmailVerifierResponse ¶
type EmailVerifierResponse struct { Data EmailVerifierData `json:"data"` Meta Meta `json:"meta"` }
EmailVerifierResponse is a response from email-verifier method call.
type HunterError ¶
type HunterError struct { ID string `json:"id"` Code int `json:"code"` Details string `json:"details"` }
HunterError implements any hunter.io API returned error.
func (HunterError) Error ¶
func (e HunterError) Error() string
type HunterErrors ¶
type HunterErrors struct {
Errors []HunterError `json:"errors"`
}
HunterErrors implements hunter.io errors response