go

module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 1, 2026 License: Apache-2.0

README

Tomba Tomba Go SDK

The #1 Rated Email Intelligence Platform — Find professional emails with unmatched accuracy.

Go Reference License

About Tomba

Tomba.io is the #1 rated email intelligence platform, trusted by 150,000+ sales teams worldwide.

  • Best Email Finder — 98% accuracy, ranked #1 in independent benchmarks
  • Best Email Verification — Real-time SMTP verification with catch-all detection
  • Best Phone Finder — Direct dial numbers linked to professional emails
  • Best Domain Search — 450M+ verified contacts across all industries
  • 81% Coverage — The highest in the industry, proven in 5,000-lead independent tests
Why Tomba?
Feature Tomba Others
Email Coverage 81% 30-60%
Verification Real-time SMTP Pattern-based
Phone Numbers Direct dials Limited
Catch-all Detection AI-powered Basic
API Rate Limits Generous Restrictive

Get your free API key — No credit card required.

Getting Started

  1. Sign up for a free account at app.tomba.io
  2. Get your API key from the API dashboard
  3. Install the SDK (see below)
  4. Start finding emails with just a few lines of code

Installation

go get github.com/tomba-io/go

Authentication

Get your API credentials from app.tomba.io/api.

import "github.com/tomba-io/go/tomba"

client := tomba.New("ta_xxxx", "ts_xxxx")

Quick Start

package main

import (
	"fmt"

	"github.com/tomba-io/go/tomba"
)

func main() {
	client := tomba.New("ta_xxxx", "ts_xxxx")

	result, err := client.DomainSearch(tomba.Params{
		"domain": "stripe.com",
	})
	if err != nil {
		fmt.Println("Error:", err)
		return
	}
	fmt.Println(result)
}

Services

Search for email addresses associated with a domain.

// Basic search
result, err := client.DomainSearch(tomba.Params{
	"domain": "stripe.com",
})

// With filters
result, err := client.DomainSearch(tomba.Params{
	"domain":     "stripe.com",
	"page":       1,
	"limit":      50,
	"country":    "US",
	"department": "engineering",
})
Email Finder

Generate or retrieve the most likely email address from a domain and name.

// Using first_name + last_name
result, err := client.EmailFinder(tomba.Params{
	"domain":     "stripe.com",
	"first_name": "Patrick",
	"last_name":  "Collison",
})

// Using full_name with enrich_mobile
result, err := client.EmailFinder(tomba.Params{
	"domain":        "stripe.com",
	"full_name":     "Patrick Collison",
	"enrich_mobile": true,
})
Email Verifier

Verify the deliverability of an email address.

result, err := client.EmailVerifier(tomba.Params{
	"email": "b.mohamed@tomba.io",
})
Author Finder

Discover the email address of an article's author.

result, err := client.AuthorFinder(tomba.Params{
	"url": "https://tomba.io/blog",
})
LinkedIn Finder

Find the email address associated with a LinkedIn profile URL.

result, err := client.LinkedinFinder(tomba.Params{
	"url":          "https://www.linkedin.com/in/username",
	"enrich_mobile": true,
	"full":          true,
})
Email Enrichment

Enrich an email address with additional contact data.

result, err := client.Enrichment(tomba.Params{
	"email": "b.mohamed@tomba.io",
})
Phone Finder

Search for phone numbers based on email, domain, or LinkedIn URL.

// By email
result, err := client.PhoneFinder(tomba.Params{
	"email": "b.mohamed@tomba.io",
})

// By domain
result, err := client.PhoneFinder(tomba.Params{
	"domain": "tomba.io",
})

// By LinkedIn URL
result, err := client.PhoneFinder(tomba.Params{
	"linkedin": "https://www.linkedin.com/in/username",
})
Phone Validator

Validate a phone number and check carrier information.

result, err := client.PhoneValidator(tomba.Params{
	"phone": "+1234567890",
})
Email Count

Get the number of email addresses found for a domain.

result, err := client.Count("stripe.com")
Domain Status

Check if a domain is webmail or disposable.

result, err := client.Status("gmail.com")
Domain Suggestions

Auto-complete company names and retrieve logo and domain information.

result, err := client.AutoComplete("stripe")
Email Sources

Find where an email address was found on the web.

result, err := client.Sources("b.mohamed@tomba.io")
Email Format

Get the email format pattern used by a company.

result, err := client.EmailFormat("stripe.com")
Similar Domains

Find domains similar to a given domain.

result, err := client.SimilarDomains("stripe.com")
Technology Finder

Retrieve the technologies used by a domain.

result, err := client.TechnologyCheck("stripe.com")
Location

Get employee location and count data for a domain.

result, err := client.EmployeesCount("stripe.com")
Person API (Enrichment)

Retrieve person information based on an email address.

result, err := client.PersonFind(tomba.Params{
	"email": "b.mohamed@tomba.io",
})
Company API (Enrichment)

Retrieve company information based on a domain.

result, err := client.CompanyFind(tomba.Params{
	"domain": "stripe.com",
})
Combined API (Enrichment)

Retrieve combined person and company information based on an email address.

result, err := client.CombinedFind(tomba.Params{
	"email": "b.mohamed@tomba.io",
})
Companies Search (Reveal)

Search for companies using natural language queries or structured filters.

import "github.com/tomba-io/go/tomba/models"

// Natural language query
result, err := client.SearchCompanies(&models.RevealSearchRequest{
	Query: "Real Estate in France",
})

// With structured filters
result, err := client.SearchCompanies(&models.RevealSearchRequest{
	Page: 1,
	Filters: &models.RevealSearchFilters{
		Company: &models.RevealCompanyFilters{
			LocationCountry: &models.RevealCircularFilter{
				Include: []string{"US", "UK"},
			},
			Industry: &models.RevealCircularFilter{
				Include: []string{"Technology"},
			},
			Size: &models.RevealCircularFilter{
				Include: []string{"101-500", "501-1000"},
			},
		},
	},
})
Leads

Manage lead records programmatically.

// List leads
result, err := client.ListLeads(tomba.Params{"page": 1, "limit": 10})

// Get a lead
result, err := client.GetLead("lead_id")

// Create a lead
result, err := client.CreateLead(tomba.Params{
	"email":      "user@example.com",
	"first_name": "John",
	"last_name":  "Doe",
})

// Update a lead
result, err := client.UpdateLead("lead_id", tomba.Params{
	"first_name": "Jane",
})

// Delete a lead
result, err := client.DeleteLead("lead_id")
Leads Lists

Organize leads into lists. Supports CRUD operations: ListLeadsLists(), GetLeadsList(), CreateLeadsList(), UpdateLeadsList(), DeleteLeadsList().

Lead Attributes

Manage custom attributes for leads. Supports CRUD operations: ListAttributes(), GetAttribute(), CreateAttribute(), UpdateAttribute(), DeleteAttribute().

Keys

Manage your API keys. Supports ListKeys(), GetKey(), CreateKey(), ResetKey(), and DeleteKey().

Usage

Get your monthly API request usage statistics.

result, err := client.Usage()
Logs

Retrieve your last 1,000 API requests from the past 3 months.

result, err := client.Logs(tomba.Params{"page": 1, "limit": 50})
Flag

Report incorrect data or hard bounces for credit recovery. Supports ListFlags() and CreateFlag().

Bulk Operations

Create, launch, and download bulk processing jobs.

import "github.com/tomba-io/go/tomba/models"

// List bulk operations
result, err := client.GetAllBulks(models.BulkTypeVerifier, &models.BulkGetParams{
	Page:  1,
	Limit: 10,
})

// Create a bulk with file upload
result, err := client.CreateBulkWithFile(
	models.BulkTypeVerifier,
	&models.BulkCreateParams{Name: "My Bulk Verification"},
	"/path/to/emails.csv",
)

// Launch a bulk
result, err := client.LaunchBulk(models.BulkTypeVerifier, 123)

// Check progress
progress, err := client.GetBulkProgress(models.BulkTypeVerifier, 123)

// Download results
data, err := client.DownloadBulk(models.BulkTypeVerifier, 123, nil)

// Save results to file
err := client.SaveBulkResults(models.BulkTypeVerifier, 123, "results.csv", "csv")

Supported BulkType values: BulkTypeSearch, BulkTypeSimilar, BulkTypeCompany, BulkTypeFinder, BulkTypeEnrich, BulkTypeLinkedIn, BulkTypeAuthor, BulkTypeVerifier, BulkTypePhoneFinder, BulkTypePhoneValidator.

Testing

go test ./tomba/...

Documentation

About Tomba

Founded to solve the problem of unreliable email data, Tomba.io is the leading B2B email intelligence platform. Our AI-powered engine searches, verifies, and enriches professional contact data with unmatched accuracy.

Products
Browser Extensions & Add-ons
Integrations

50+ CRM and sales tool integrations: Salesforce · HubSpot · Zapier · Pipedrive · and more...

Other Tomba SDKs
Language Package
Node.js tomba
Python tomba-io
PHP tomba-io/php
Ruby tomba
Go tomba-io/go
Rust tomba
Dart tomba
Deno @tomba/sdk
Elixir tomba
C# Tomba
Perl Tomba::Client
Lua tomba
R tomba
Resources

Try Tomba Free — Find your first email in seconds. No credit card required.

License

Apache-2.0

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL